ในขณะที่โรงเรียนที่คุณเข้าร่วมมีการเผยแพร่สคริปต์สถานที่ที่ดีที่สุดในการแสดงความกังวลของคุณก็คือกับผู้สอนของคุณ
ที่กล่าวว่าเราสามารถช่วยคุณถอดรหัสรหัสแบบทีละบรรทัด มันอาจจะทำไม่ได้สำหรับทุกคนที่นี่เพื่อวิเคราะห์ทุกรหัส
คุณมีสคริปต์ทุบตี 40 อันรวม 5,360 บรรทัด ฉันได้รวมมันเข้าด้วยกันแล้วมองหาคำสั่ง 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เมื่อรวมไฟล์รวมพบข้อผิดพลาดทางไวยากรณ์เพียงสามข้อ
- ชื่อผู้แต่งจะถูกระบุและผู้เขียนหลักยังมีรูปภาพของเขาใน
github
หน้า
- แม้ว่าจะไม่มีการรับประกันในชีวิต แต่
42FileChecker
ก็ปลอดภัยที่จะใช้
ไม่ใช่สคริปต์ทุบตีที่มนุษย์อ่านได้ซึ่งคุณต้องกังวลมาก มันถูกรวบรวมวัตถุไบนารีที่คุณไม่สามารถอ่านที่เป็นสาเหตุของความกังวล ตัวอย่างเช่นโปรแกรมที่เรียกว่า "Shiny-bouncy-sphere" อาจวาดบางสิ่งเช่นนั้นบนหน้าจอของคุณ แต่ในพื้นหลังอาจเป็นการลบไฟล์ทั้งหมดของคุณ
คำตอบเดิม
ที่ดีที่สุดคือถามผู้เขียนของสคริปต์ว่ามันทำอะไร แน่นอนคุณสามารถโพสต์คำต่อคำของคำถามตามที่ปรากฏด้านบน
ถามผู้เขียนด้วย:
- ไฟล์ใดได้รับการอัพเดต?
- จะเกิดอะไรขึ้นหากระบบขัดข้องเนื่องจากไฟฟ้าขัดข้องหรือข้อบกพร่องของโปรแกรม
- สามารถทำการสำรองข้อมูลขนาดเล็กก่อนได้หรือไม่?
และคำถามที่ดีอื่น ๆ ที่คุณนึกออก
แก้ไข 1 - กังวลเกี่ยวกับผู้เขียนที่เป็นอันตราย
คุณควรใช้ซอฟต์แวร์ที่มีบทวิจารณ์สาธารณะที่ดีมากมาย อีกทางเลือกหนึ่งผู้เขียนที่คุณไว้วางใจใน Ask Ubuntu เช่น Serge, Jacob, Colin King และอื่น ๆ เว็บไซต์ที่น่านับถืออื่น ๆ เช่น Ask Ubuntu และสมาชิกที่น่านับถือของพวกเขาควรได้รับการพิจารณาว่าเป็น "ไม่อันตราย"
ข้อได้เปรียบของ "ผู้เขียนที่เคารพนับถือ" ที่นี่ใน Ask Ubuntu คือพวกเขาเดิมพันคุณค่าของตนเองใน "คะแนนชื่อเสียง" หากพวกเขาตั้งใจเขียนโค้ดที่ "ขโมย" หรือ "เสียหาย" ข้อมูลพวกเขาก็จะเสียชื่อเสียงอย่างรวดเร็ว ผู้เขียนอาจได้รับ "ความโกรธแค้นของ mods" และถูกระงับและ / หรือมีคะแนนชื่อเสียง 10,000 คะแนน
แก้ไข 2 - อย่าทำตามคำแนะนำทั้งหมด
ฉันมองลึกลงไปในคำแนะนำสคริปต์ทุบตีของคุณ:
git clone https://github.com/jgigault/42FileChecker ~/42FileChecker &&
cd ~/42FileChecker &&
bash ./42FileChecker.sh
วิธี "ปลอดภัย" คือการเรียกใช้บรรทัดแรกเท่านั้น:
git clone https://github.com/jgigault/42FileChecker ~/42FileChecker
นี่เป็นการดาวน์โหลดสคริปต์ แต่ไม่ได้เรียกใช้ ใช้ครั้งถัดไปnautilus
(ตัวจัดการไฟล์) เพื่อตรวจสอบไดเรกทอรีและไฟล์ที่ติดตั้ง คุณค้นพบอย่างรวดเร็วมากว่ามีกลุ่มของสคริปต์ทุบตีที่เขียนโดยกลุ่มนักเรียนในฝรั่งเศส
วัตถุประสงค์ของสคริปต์คือการรวบรวมและทดสอบโปรแกรม C สำหรับฟังก์ชั่นที่ไม่เหมาะสมและการรั่วไหลของหน่วยความจำ
man
หน้าคำสั่งที่อยู่ในนั้นได้