คำถามติดแท็ก brute-force

16
การตอบโต้ของ Brute Force ที่ดีที่สุดคืออะไร
ข้อแรกพื้นหลังเล็กน้อย: มันไม่มีความลับที่ฉันใช้ระบบ auth + auth สำหรับ CodeIgniter และจนถึงตอนนี้ฉันก็ชนะ (ดังนั้นพูด) แต่ผมเคยทำงานเป็นความท้าทายที่สวยไม่น่ารำคาญ (หนึ่งที่มากที่สุดห้องสมุดรับรองความถูกต้องพลาดทั้งหมด แต่ผมยืนยันในการจัดการอย่างถูกต้อง): วิธีการจัดการอย่างชาญฉลาดที่มีขนาดใหญ่กระจายตัวแปรชื่อผู้โจมตีแรงเดรัจฉาน ฉันรู้ทุกเทคนิคปกติ: การ จำกัด จำนวน # ของความพยายามที่ล้มเหลวต่อ IP / โฮสต์และปฏิเสธการเข้าถึงผู้กระทำผิด (เช่น Fail2Ban) - ซึ่งไม่ทำงานอีกต่อไปเนื่องจาก botnets เติบโตอย่างชาญฉลาด การรวมรายการด้านบนกับบัญชีดำของ IP / โฮสต์ที่รู้จัก 'ไม่ดี' (เช่น DenyHosts) - ซึ่งขึ้นอยู่กับ botnets ที่ล้มลงในอันดับที่ 1 ซึ่งพวกเขาไม่ทำมากขึ้น รายการ IP / โฮสต์ที่รวมกับการรับรองความถูกต้องแบบดั้งเดิม (ไร้ประโยชน์เศร้ากับผู้ใช้ IP แบบไดนามิกและปั่นป่วนสูงในเว็บไซต์ส่วนใหญ่) การตั้งค่าจำกัด sitewideในจำนวน …

10
ความจำเป็นในการซ่อนเกลือสำหรับกัญชา
ในที่ทำงานเรามีสองทฤษฎีที่แข่งขันกันสำหรับเกลือ ผลิตภัณฑ์ที่ฉันทำงานใช้บางอย่างเช่นชื่อผู้ใช้หรือหมายเลขโทรศัพท์เพื่อเพิ่มแฮช โดยพื้นฐานแล้วสิ่งที่แตกต่างกันสำหรับผู้ใช้แต่ละคน แต่พร้อมสำหรับเรา ผลิตภัณฑ์อื่น ๆ จะสุ่มสร้างเกลือสำหรับผู้ใช้แต่ละรายและจะเปลี่ยนแปลงทุกครั้งที่ผู้ใช้เปลี่ยนรหัสผ่าน จากนั้นเกลือจะถูกเข้ารหัสในฐานข้อมูล คำถามของฉันคือแนวทางที่สองจำเป็นจริงหรือ? ฉันเข้าใจได้จากมุมมองทางทฤษฎีล้วนๆว่าปลอดภัยกว่าแนวทางแรก แต่จากมุมมองการปฏิบัติจริง ในขณะนี้ในการพิสูจน์ตัวตนผู้ใช้ต้องไม่เข้ารหัสเกลือและนำไปใช้กับข้อมูลการเข้าสู่ระบบ หลังจากคิดแล้วฉันก็ไม่เห็นประโยชน์ด้านความปลอดภัยที่แท้จริงจากแนวทางนี้ การเปลี่ยน Salt จากบัญชีเป็นบัญชียังคงทำให้บางคนพยายามบังคับใช้อัลกอริธึมการแฮชแบบเดรัจฉานแม้ว่าผู้โจมตีจะทราบวิธีการตรวจสอบอย่างรวดเร็วว่ามันคืออะไรสำหรับแต่ละบัญชีก็ตาม สิ่งนี้เกิดขึ้นโดยสันนิษฐานว่ารหัสผ่านมีความแข็งแกร่งเพียงพอ (เห็นได้ชัดว่าการค้นหาแฮชที่ถูกต้องสำหรับชุดรหัสผ่านที่เป็นตัวเลขสองหลักนั้นง่ายกว่าการค้นหาแฮชรหัสผ่านที่ถูกต้องซึ่งเป็นตัวเลข 8 หลัก) ตรรกะของฉันไม่ถูกต้องหรือมีบางอย่างที่ฉันขาดหายไป? แก้ไข:โอเคนี่คือเหตุผลที่ฉันคิดว่ามันเป็นเรื่องยากที่จะเข้ารหัสเกลือ (รู้ว่าฉันมาถูกทางหรือเปล่า) สำหรับคำอธิบายต่อไปนี้เราจะถือว่ารหัสผ่านเป็น 8 ตัวอักษรเสมอและเกลือคือ 5 และรหัสผ่านทั้งหมดประกอบด้วยตัวอักษรพิมพ์เล็ก (มันทำให้การคำนวณง่ายขึ้น) การมีเกลือที่แตกต่างกันสำหรับแต่ละรายการหมายความว่าฉันไม่สามารถใช้ตารางสายรุ้งเดียวกันได้ (จริงๆแล้วในทางเทคนิคฉันทำได้ถ้าฉันมีขนาดที่เพียงพอ แต่ขอเพิกเฉยต่อสิ่งนั้นในขณะนี้) นี่คือกุญแจสำคัญที่แท้จริงของเกลือจากสิ่งที่ฉันเข้าใจเพราะในการแตกทุกบัญชีฉันต้องสร้างวงล้อขึ้นมาใหม่เพื่อที่จะพูดถึงแต่ละบัญชี ตอนนี้ถ้าฉันรู้วิธีใช้เกลือที่ถูกต้องกับรหัสผ่านเพื่อสร้างแฮชฉันจะทำเพราะเกลือนั้นขยายความยาว / ความซับซ้อนของวลีที่แฮช ดังนั้นฉันจะตัดจำนวนชุดค่าผสมที่เป็นไปได้ที่ฉันต้องสร้างเพื่อ "รู้" ฉันมีรหัสผ่าน + เกลือจาก 13 ^ 26 เป็น 8 ^ 26 เพราะฉันรู้ว่าเกลือคืออะไร ตอนนี้ทำให้ง่ายขึ้น …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.