あなたが通っている学校が台本を公開しているので、懸念を表明するのに最適な場所はあなたのインストラクターです。
つまり、1行ごとにコードを解読できるように支援できます。ここの誰もがすべてのコードを分析することはおそらく実用的ではありません。
実際には、合計5,360行の40個のbashスクリプトがあります。それらを組み合わせて、悪用される可能性のあるbash / shellコマンドを探しました。それらはすべて正常に使用されているようです:
$ cat /tmp/sshellcheck.mrg | grep " rm "
rm -rf "$RETURNPATH"/tmp/*
rm -f "$RETURNPATH"/.mynorminette
rm -f $LOGFILENAME
rm -f $LOGFILENAME
rm -f .mymoulitest
rm -f "${RETURNPATH}/tmp/${FILEN}"
$ cat /tmp/sshellcheck.mrg | grep -i kill
function check_kill_by_name
kill $PROCESSID0
declare -a CHK_MINISHELL_AUTHORIZED_FUNCS='(malloc free access open close read write opendir readdir closedir getcwd chdir stat lstat fstat fork execve wait waitpid wait3 wait4 signal kill exit main)'
check_kill_by_name "${PROGNAME}"
kill -0 "${CURRENT_CHILD_PROCESS_PID}" 2>/dev/null && kill "${CURRENT_CHILD_PROCESS_PID}" 2>/dev/null
display_error "killed pid: ${CURRENT_CHILD_PROCESS_PID}"
check_kill_by_name "$PROGNAME $PROGARGS"
check_kill_by_name "$PROGNAME $PROGARGS"
kill ${PID} 2>/dev/null
$ cat /tmp/sshellcheck.mrg | grep -i root
"check_configure_select ROOT" "Root folder: /"\
'ROOT')
echo "'${ALLOWED_FILES}' must be placed at root folder but was found here:" >>"${LOGFILENAME}"
printf "%s" "'${ALLOWED_FILES}' must be placed at root folder"
$ cat /tmp/sshellcheck.mrg | grep -i sudo
$
rm -rf /
ハードディスクパーティション全体を消去するコマンドはありません。
sudo
スクリプトの実行に使用する要件はありません。
- スクリプトは、実際
C
に、チェックされたファイルで許可された機能のみが使用されるようにします。
- bash / shellコードのクイックブラウズは、それが専門的に書かれており、簡単に理解できることを示しています。
- マージされたインクルードファイルでshellcheckを使用すると、3つの構文エラーのみが明らかになります。
- 著者名が特定され、メインの著者は自分の写真を自分の
github
ページに掲載しています。
- 人生の保証はありませんが、
42FileChecker
安全に使用できます。
人間が読むことのできるbashスクリプトではありません。読むことができないコンパイルされたバイナリオブジェクトは、懸念の原因です。たとえば、「shiny-bouncy-sphere」と呼ばれるプログラムは、画面上にそのような何かを描くかもしれませんが、バックグラウンドではすべてのファイルを消去している可能性があります。
元の答え
スクリプトの作成者に何をするのかを尋ねることをお勧めします。実際、上記のように質問をほぼそのまま投稿できます。
また、著者に尋ねます:
- どのファイルが更新されますか?
- 停電やプログラムのバグが原因でクラッシュした場合はどうなりますか?
- 最初にミニバックアップを実行できますか?
そして、あなたが考えることができる他の良い質問。
編集1-悪意のある作者に関する心配。
ソフトウェアは、多くの優れた公開レビューでのみ使用する必要があります。また、Serge、Jacob、Colin Kingなど、Ask Ubuntuで信頼している著者もいます。AskUbuntuやその尊敬されているメンバーなど、他の尊敬されるサイトも「悪意のない」と見なされるべきです。
ここでUbuntuの「尊敬される著者」の利点は、「評判ポイント」に自分の価値があることです。データを意図的に「盗んだ」または「破損した」コードを記述すると、評判がすぐに失われます。実際、著者は「MODの怒り」に見舞われたり、中断されたり、10,000ポイントの評判ポイントが奪われたりする可能性があります。
編集2-すべての指示に従わない
bashスクリプトの指示を詳しく調べました。
git clone https://github.com/jgigault/42FileChecker ~/42FileChecker &&
cd ~/42FileChecker &&
bash ./42FileChecker.sh
「安全な」方法は、最初の行のみを実行することです:
git clone https://github.com/jgigault/42FileChecker ~/42FileChecker
これにより、スクリプトがダウンロードされますが、実行されません。次にnautilus
(ファイルマネージャー)を使用して、インストールされているディレクトリとファイルを調べます。フランスの学生グループによって書かれたbashスクリプトのコレクションがあることがすぐにわかります。
スクリプトの目的は、Cプログラムをコンパイルおよびテストして、不適切な機能とメモリリークを調べることです。
man
、それに含まれるコマンドのページを読むことができます。