bruteforce-salted-openssl - พยายามค้นหาข้อความรหัสผ่านสำหรับไฟล์ที่เข้ารหัสด้วย OpenSSL
bruteforce-salted-openssl [options] <filename>
bruteforce-salted-openssl พยายามค้นหาข้อความรหัสผ่านหรือรหัสผ่านของไฟล์ที่เข้ารหัสด้วยคำสั่ง openssl ใช้งานได้สองวิธี:
ลองใช้รหัสผ่านที่เป็นไปได้ทั้งหมดที่กำหนดชุดอักขระ
ลองใช้รหัสผ่านทั้งหมดในไฟล์ (พจนานุกรม)
bruteforce-salted-openssl มีคุณสมบัติดังต่อไปนี้:
คุณสามารถระบุจำนวนเธรดที่จะใช้เมื่อแคร็กไฟล์ได้
โปรแกรมควรสามารถใช้ไดเจสต์และรหัสสมมาตรทั้งหมดที่มีอยู่ในไลบรารี OpenSSL ที่ติดตั้งบนระบบของคุณ
การส่งสัญญาณ USR1 ไปยังกระบวนการ bruteforce-salted-openssl ที่กำลังทำงาน ทำให้การพิมพ์มีความคืบหน้าและดำเนินการต่อ
มีโหมดสมบูรณ์และโหมดพจนานุกรม
ในโหมดสมบูรณ์ โปรแกรมพยายามถอดรหัสไฟล์โดยลองใช้รหัสผ่านที่เป็นไปได้ทั้งหมด มีประโยชน์อย่างยิ่งหากคุณรู้บางอย่างเกี่ยวกับรหัสผ่าน (เช่น คุณลืมรหัสผ่านบางส่วนแต่ยังจำรหัสผ่านได้เกือบทั้งหมด) การค้นหารหัสผ่านของไฟล์โดยไม่ทราบอะไรเลยอาจใช้เวลานานเกินไป (เว้นแต่รหัสผ่านจะสั้นและ/หรืออ่อนแอ) มี ตัวเลือก ของบรรทัดคำสั่งที่จะระบุ:
ความยาวรหัสผ่านขั้นต่ำที่ควรลอง
ความยาวสูงสุดของรหัสผ่านที่จะลอง
จุดเริ่มต้นของรหัสผ่าน
จุดสิ้นสุดของรหัสผ่าน
อักขระที่กำหนดให้ใช้ (ระหว่างอักขระของโลแคลปัจจุบัน)
ในโหมดพจนานุกรม โปรแกรมจะพยายามถอดรหัสไฟล์โดยลองใช้รหัสผ่านทั้งหมดที่มีอยู่ในไฟล์ ไฟล์ต้องมีหนึ่งรหัสผ่านต่อบรรทัด
หยุดโปรแกรมหลังจากค้นหาผู้สมัครรหัสผ่านแรก
แสดงรายการอัลกอริทึมการเข้ารหัสและย่อยที่มีอยู่
ค้นหาโดยใช้รหัสผ่านไบนารี (แทนรหัสผ่านอักขระ) เขียนผู้สมัครไปที่
จุดเริ่มต้นของรหัสผ่าน ค่าเริ่มต้นคือ ""
รหัสสำหรับการถอดรหัส ค่าเริ่มต้นคือ aes-256-cbc
แยกย่อยสำหรับการสร้างเวกเตอร์คีย์และการเริ่มต้น เริ่มต้น: md5
สิ้นสุดรหัสผ่าน ค่าเริ่มต้น: "".
อ่านรหัสผ่านจากไฟล์แทนการสร้างรหัสผ่าน
แสดงความช่วยเหลือและเลิก
จำกัดจำนวนสูงสุดของรหัสผ่านที่ทดสอบไว้ที่
ความยาวรหัสผ่านขั้นต่ำ (รวมจุดเริ่มต้นและจุดสิ้นสุด) ค่าเริ่มต้น: 1.
ถือว่าการถอดรหัสสำเร็จเมื่อข้อมูลขึ้นต้นด้วย
ความยาวรหัสผ่านสูงสุด (รวมจุดเริ่มต้นและจุดสิ้นสุด) ค่าเริ่มต้น: 8.
ละเว้นข้อผิดพลาดในการถอดรหัส (คล้ายกับ openssl -nopad)
ละเว้นเกลือ (คล้ายกับ opensl -nosalt)
ดูตัวอย่างและตรวจสอบ
ชุดอักขระรหัสผ่าน ค่าเริ่มต้นคือ "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
จำนวนเธรดที่จะใช้ ค่าเริ่มต้น: 1.
พิมพ์ข้อมูลความคืบหน้าทุกๆ n วินาที
กู้คืนสถานะของเซสชันก่อนหน้าหากมีไฟล์อยู่ จากนั้นเขียนสถานะลงในไฟล์เป็นประจำ (~ ทุกนาที)
หมายเหตุ: การส่งสัญญาณ USR1 ไปยังกระบวนการ bruteforce-salted-openssl ที่กำลังทำงานอยู่ ทำให้ระบบพิมพ์ข้อมูลความคืบหน้าไปยังข้อผิดพลาดมาตรฐานและดำเนินการต่อ
โปรแกรมจะถือว่าข้อมูลที่ถอดรหัสนั้นถูกต้อง หากประกอบด้วยอักขระ ASCII ที่พิมพ์ได้เป็นหลัก (อย่างน้อย 90%) หากไฟล์ที่คุณต้องการถอดรหัสไม่มีข้อความล้วน คุณจะต้องใช้ตัวเลือก -M หรือแก้ไขฟังก์ชัน 'valid_data' ในซอร์สโค้ดให้ตรงกับความต้องการของคุณ
หากไฟล์ที่คุณต้องการถอดรหัสมีขนาดใหญ่ คุณควรใช้ตัวเลือก -N กับไฟล์เวอร์ชันที่ถูกตัดทอน (เพื่อหลีกเลี่ยงการถอดรหัสทั้งไฟล์ด้วยรหัสผ่านแต่ละรหัส)
ลองค้นหารหัสผ่านของไฟล์ที่เข้ารหัส aes256 โดยใช้ 4 เธรด โดยลองใช้เฉพาะรหัสผ่านที่มีอักขระ 5 ตัว:
bruteforce-salted-openssl -t 4 -l 5 -m 5 -c aes256 encrypted.file
ลองค้นหารหัสผ่านของไฟล์ที่เข้ารหัส des3 โดยใช้ 8 เธรด ลองเฉพาะรหัสผ่านที่มีอักขระ 9 ถึง 11 ตัว ขึ้นต้นด้วย "AbCD" ลงท้ายด้วย "Ef" และมีเฉพาะตัวอักษร:
bruteforce-salted-openssl -t 8 -l 9 -m 11 -c des3 -b "AbCD" -e "Ef" -s "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" encrypted.file
ลองค้นหารหัสผ่านของไฟล์ที่เข้ารหัส aes256 โดยใช้ 6 เธรด โดยลองใช้รหัสผ่านที่อยู่ในไฟล์พจนานุกรม:
bruteforce-salted-openssl -t 6 -f dictionary.txt -c aes256 encrypted-file
พิมพ์ข้อมูลความคืบหน้าทุกๆ 30 วินาที:
bruteforce-salted-openssl -t 6 -f dictionary.txt -c aes256 -v 30 encrypted-file
ลองค้นหารหัสผ่านของไฟล์ gzip ที่เข้ารหัส des3 โดยใช้ 8 เธรด:
bruteforce-salted-openssl -t 8 -v 5 -c des3 -m 9 -s "0123456789" -M "$(echo -ne '\x1f\x8b')" file.tar.gz.des3
บันทึก/กู้คืนสถานะระหว่างเซสชัน:
bruteforce-salted-openssl -t 6 -f dictionary.txt -c aes256 -w state.txt encrypted-fileปล่อยให้โปรแกรมทำงานสักครู่แล้วหยุดหลังจากเปิดใช้:
bruteforce-salted-openssl -t 6 -c aes256 -w state.txt encrypted-fileแสดงรายการอัลกอริทึมที่มีอยู่:
bruteforce-salted-openssl -aหากโปรแกรมพบรหัสผ่านที่เป็นตัวเลือก pwd คุณสามารถถอดรหัสข้อมูลโดยใช้คำสั่ง 'openssl':
openssl enc -d -aes256 -salt -in encrypted.file -out decrypted.file -k pwd
bruteforce-salted-openssl เขียนโดย Guillaume LE VAILLANT สำหรับการติดต่อ ใช้อีเมล glv@posteo.net หรือไปที่ https://github.com/glv2/bruteforce-salted-openssl
หน้าคู่มือนี้เขียนโดย Joao Eriberto Mota Filho eriberto@debian.org สำหรับโครงการ Debian (แต่ผู้อื่นอาจใช้)