ผู้สอน: ในการบรรยายครั้งก่อน
เราเห็นวิธีดาวน์เกรดเว็บไซต์ HTTPS เป็น HTTP
และทำให้เราเห็นทุกอย่างที่ผู้ใช้ทำในเว็บไซต์เหล่านี้โดยทั่วไป
เนื่องจากข้อมูลใน HTTP ถูกส่งเป็นข้อความธรรมดา
ดังนั้นเราจึงสามารถเห็นชื่อผู้ใช้
รหัสผ่าน URL และทุกอย่างที่พวกเขาทำบนเว็บไซต์ HTTPS
ในตอนท้ายของการบรรยาย ฉันยังแสดงให้คุณเห็นว่าวิธีการนี้ใช้ไม่ได้กับ
Facebook, Twitter และเว็บไซต์อื่นๆ ที่ใช้ HSTS
เหตุผลที่ใช้ไม่ได้กับเว็บไซต์เหล่านี้
เนื่องจากเว็บเบราว์เซอร์สมัยใหม่มีรายชื่อเว็บไซต์ที่ควรโหลดผ่าน
HTTPS เท่านั้น
ดูสิ่งที่เรากำลังทำในการบรรยายก่อนหน้านี้
เมื่อใดก็ตามที่เบราว์เซอร์ร้องขอเว็บไซต์ เราจะโหลดเว็บไซต์นั้น
แม้ว่าจะใช้ HTTPS ก็ตาม ซึ่งเราจะคืนเวอร์ชัน
HTTP ให้เขาเสมอ
ใน HSTS เบราว์เซอร์รู้ว่าเว็บไซต์นี้
เช่น facebook com ควรโหลดผ่าน HTTPS เสมอ
ดังนั้นก่อนที่จะส่งคำขอนี้ถึงเรา
คำขอนี้จะส่งเป็น HTTPS เสมอ
และจะยอมรับเสมอก็ต่อเมื่อกลับมาเป็น HTTPS
ไม่มีอะไรที่เราสามารถทำได้จริงๆ เมื่อเรากลายเป็นผู้ชายที่อยู่ตรงกลาง
เนื่องจากเบราว์เซอร์กำลังดำเนินการตรวจสอบนี้ในเครื่อง
จึงตรวจสอบกับรายการที่จัดเก็บไว้ในคอมพิวเตอร์เอง
ดังนั้น ทางออกเดียวที่ใช้ได้จริงในขณะนี้ในการเลี่ยงผ่าน
HSTS คือทำให้เบราว์เซอร์คิดว่ากำลังโหลดเว็บไซต์อื่นอยู่
ในการดำเนินการนี้ เราจะแทนที่ลิงก์ HSTS ทั้งหมดในหน้าที่โหลดเป็นลิงก์ที่คล้ายกัน
แต่ลิงก์เหล่านั้นไม่ใช่ลิงก์เดียวกัน
เช่น เราสามารถแทนที่ facebook คอมกับเฟสบุ๊ค ข้าวโพด.
ตอนนี้ ฉันรู้ว่าสิ่งนี้ดูน่าสงสัยมาก
แต่เชื่อฉันเถอะว่าเมื่อมันเข้าไปในแถบ
URL ที่ RN ที่อยู่ตรงกลาง มันจะดูเหมือนกับตัวอักษร
M มาก
อีกวิธีในการทำเช่นนี้ คุณสามารถเปลี่ยน Twitter ได้ คอมกับทวิตเตอร์
com
แต่มี T ตัวเดียวที่นี่ แทนที่จะเป็น T สองเท่า
ฉันรู้ว่ามันฟังดูสับสนเล็กน้อยในตอนนี้
แต่ให้ฉันลองทำตามจริง แล้วคุณจะเห็นว่ามันทำงานอย่างไร
ดังนั้นที่นี่ฉันมีเครื่องกาลีของฉัน
และเราจะใช้แคปเล็ท HSTS ที่เราใช้ในการบรรยายครั้งก่อน
ดังที่กล่าวในการบรรยายครั้งที่แล้ว
caplet นี้ได้รับการติดตั้งแล้วใน Kali แบบกำหนดเอง
หากคุณต้องการใช้กับ Kali ดั้งเดิม คุณจะต้องดาวน์โหลดด้วยตนเองและวางไว้ในเส้นทางที่ถูกต้อง
ในผู้ใช้ ในพื้นที่ แชร์ , Bettercap, แคปเล็ท
ฉันมีแคปเล็ทอยู่ตรงนี้
อย่างที่ฉันบอกไป นี่เป็นไฟล์ที่ถูกต้องแล้วเพราะฉันใช้
Kali แบบกำหนดเอง ถ้าเราเข้าไปข้างใน เราจะมีไฟล์ชื่อ
hstshijack หมวก
นี่คือไฟล์การกำหนดค่าของคู่
ผมจะคลิกขวาที่มัน ผมจะเปิดมันด้วยแอปพลิเคชั่นอื่น
ผมจะคลิกดูแอปพลิเคชั่นทั้งหมด
และคุณต้องการเลือกโปรแกรมแก้ไขข้อความที่คุณมี
ผมจะเก็บไว้ที่แผ่นพับ
คุณอาจต้องเลื่อนลงไปหามัน
แต่ฉันมีที่นี่ ฉันจะเลือก
และอย่างที่คุณเห็น เรามีไฟล์ข้อความปกติพร้อมการกำหนดค่าทั้งหมดที่เราสามารถตั้งค่าได้
และฉันได้กำหนดค่านี้ไว้ล่วงหน้าสำหรับคุณแล้ว
สิ่งสำคัญที่คุณต้องการทำความเข้าใจและอาจเปลี่ยนแปลงคือเป้าหมายและสิ่งที่จะมาแทนที่
ดังนั้นเป้าหมายคือโดเมนที่ใช้ HSTS ที่คุณต้องการแทนที่
ตัวอย่างเช่น ฉันมีทวิตเตอร์ เข้ามาที่นี่และฉันก็มีดาวด้วย
ทวิตเตอร์ คอม
โดยทั่วไป เมื่อคุณใช้ดาว นี่คือไวด์การ์ด
และโดยพื้นฐานแล้วมันหมายถึงโดเมนย่อยใดๆ ทวิตเตอร์ คอมก็เป็นเป้าหมายเช่นกัน
และการแทนที่ คุณต้องการบอกโปรแกรมว่าจะแทนที่เป้าหมายนี้ด้วยอะไร
ตัวอย่างเช่น เมื่อใดก็ตามที่เราเห็นทวิตเตอร์ com เราจะแทนที่ด้วย
Twitter ข้าวโพด.
คล้ายกันสำหรับ Facebook และ Apple
และโดเมนอื่น ๆ ที่ฉันพูด
คุณยังสามารถลองใช้ตัวเลือก obfuscate
และเข้ารหัสได้
ฉันได้ตั้งค่าทั้งสองนี้เป็นเท็จ เพราะโดยพื้นฐานแล้ว
สิ่งเหล่านี้จะทำอะไร พวกเขาจะทำให้โค้ดสับสนและเข้ารหัส
แต่ฉันสังเกตเห็นว่าเบราว์เซอร์บางตัว เช่น Firefox จะบล็อกโค้ดที่สับสนหรือเข้ารหัส
นั่นเป็นเหตุผลที่ฉันตั้งค่าทั้งสองนี้เป็นเท็จเพื่อให้โค้ดถูกทิ้งไว้ตามที่เป็นอยู่
ในเพย์โหลด คุณสามารถตั้งค่าโค้ด JavaScript อื่นๆ
ที่คุณต้องการฉีด ปล่อยไว้เหมือนเดิม
เราจะพูดถึงการฉีด JavaScript ในการบรรยายครั้งต่อไป
สุดท้าย คุณต้องตรวจสอบให้แน่ใจว่าโดเมนการปลอมแปลง
DNS ได้รับการตั้งค่าเหมือนกับการแทนที่ในที่นี่ทุกประการ
ดังนั้นฉันจึงคัดลอกบรรทัดนี้แล้ววางที่นี่
ตอนนี้ฉันจะเก็บทุกอย่างไว้เหมือนเดิม
ฉันไม่ต้องแก้ไขอะไรทั้งนั้น
แต่อย่างที่ฉันบอกไป หากคุณกำลังกำหนดเป้าหมายเว็บไซต์ที่แตกต่างกัน
หรือหากคุณต้องการใช้การแทนที่ที่แตกต่างกัน ตัวอย่างเช่น หากคุณต้องการใช้
Twitter ที่มี T ตัวเดียว และเก็บสิ่งนี้ไว้
คอม คุณสามารถทำได้ที่นี่
หากคุณต้องการใช้ Facebook ที่มี O ตัวเดียว และเก็บสิ่งนี้ไว้
. com อีกครั้งแทน . ข้าวโพด
คุณก็ทำได้
เมื่อเสร็จแล้ว ตรวจสอบให้แน่ใจว่าคุณได้บันทึกและออกจากไฟล์นี้
และเราพร้อมที่จะโจมตี
ดังนั้นการเรียกใช้การโจมตีนี้จะเหมือนกับที่เราเคยทำในการบรรยายครั้งก่อน
คุณแค่ต้องการให้แน่ใจว่าคุณแก้ไขไฟล์นี้อย่างถูกต้อง
กลับไปที่ Bettercap ฉันจะล้างหน้าจอ เรียกใช้ Bettercap
ด้วยคำสั่งเดียวกัน โหลดแคปเล็ทพิสูจน์นี้
ดังนั้นเราจึงสามารถทำคำสั่ง AARP spoofing ทั้งหมด
และรัน sniffer ทั้งหมดโดยอัตโนมัติ
และสมบูรณ์แบบ อย่างที่คุณเห็นทุกอย่างทำงานตามที่คาดไว้โดยไม่มีข้อผิดพลาด
หากคุณเรียกใช้สิ่งนี้และพบข้อผิดพลาด
ให้ออกจากการทำงานและเรียกใช้ Bettercap อีกครั้ง
ต่อไป เราต้องการเรียกใช้ couplet, HSTS hijack caplet เหมือนกับที่แสดงในการบรรยายครั้งก่อน
ทั้งหมดที่เราต้องทำคือพิมพ์แท็บ
HS มันจะเติมข้อความอัตโนมัติสำหรับเราและกด
Enter เพื่อเรียกใช้
อีกครั้ง เนื่องจากคุณจะเห็นว่าไม่มีข้อผิดพลาด
ดังนั้นทุกอย่างจึงทำงานตามที่คาดไว้
ไปที่เครื่องเป้าหมายและดูว่ามันทำงานอย่างไร
ดังนั้นฉันจึงมีเครื่อง Windows ของฉันที่นี่
นี่คือ Chrome ซึ่งเป็นเวอร์ชันล่าสุด
และก่อนที่ฉันจะทำอะไร อย่างที่บอก
เป็นความคิดที่ดีที่จะลบข้อมูลการท่องเว็บออกเสมอ
และก่อนที่ฉันจะโหลดเว็บไซต์ใด ๆ
สิ่งสำคัญคือต้องเข้าใจว่าแม้กับทุกสิ่งที่เราทำอยู่ตอนนี้
ถ้าคุณพยายามไปที่ Facebook และพิมพ์
com
สุดท้ายนี้ มันใช้ไม่ได้ สิ่งที่เราทำอยู่ตอนนี้จะไม่ทำงาน
เนื่องจาก Chrome ที่นี่มีรายการที่เก็บไว้ในคอมพิวเตอร์เครื่องนี้ที่ระบุว่าห้ามโหลด
Facebook com เว้นแต่จะโหลดผ่าน
HTTPS
ดังนั้นถ้าคุณบอก Facebook ตรงนี้แบบนี้
มันจะใช้งานไม่ได้
วิธีเดียวที่เราสามารถทำได้คือถ้าผู้ใช้ไปที่เครื่องมือค้นหาก่อน
เช่น Google เช่นสำหรับไอร์แลนด์
และใน Google อย่างที่คุณเห็น Google ไม่ได้ใช้ HSTS
ดังนั้นเราจึงข้ามสิ่งนี้โดยใช้การเลี่ยงผ่าน HTTPS ปกติ
แล้วถ้าผู้ใช้ที่นี่ค้นหาเว็บไซต์เป้าหมายของพวกเขา
เช่น Facebook สคริปต์ของเราจะทำงานในเบื้องหลัง
และจะแทนที่ลิงก์ทั้งหมดในหน้านี้สำหรับ
facebook คอมกับเฟสบุ๊ค ข้าวโพด.
ถ้าฉันวางเมาส์เหนือสิ่งนี้จริง ๆ คุณจะเห็นในแถบสถานะ
เว็บไซต์ที่จะโหลดคือ facebook
ข้าวโพด
ไม่ใช่ เฟสบุ๊ค คอม
นี่ก็โอเคนะ มันยังคงบอกว่า facebook คอม
แต่เฉพาะในโค้ดของหน้า HTML
facebook com ถูกแทนที่ด้วย facebook ข้าวโพด.
ดังนั้นหากผมคลิกที่ลิงค์นี้ อีกครั้ง อย่างที่คุณเห็น
เราก็จะได้หน้า Facebook ปกติ
แต่ถ้าคุณดูด้านบนนี้ คุณจะเห็นว่าไม่มี HTTPS
และถ้าคุณดูชื่อโดเมน คุณจะเห็นว่า
ข้าวโพดไม่ คอม
อย่างที่บอกไปว่า คุณสามารถเก็บสิ่งนี้ไว้ได้จริง com และใช้ Facebook ด้วย
O ตัวเดียวหรือคุณสามารถเพิ่ม O พิเศษได้ คุณสามารถสร้างสรรค์ได้เท่าที่คุณต้องการด้วยสิ่งนี้
นี่เป็นเพียงตัวอย่างที่ฉันให้คุณ
เมื่อเรามาถึงที่นี่แล้ว เราสามารถเข้าสู่ระบบได้ตามปกติด้วยชื่อผู้ใช้ของฉัน
ดังนั้น z@zsecurity org และใส่รหัสผ่านของฉัน 1234567890
กด Enter และถ้าย้อนกลับไป ให้เลื่อนขึ้น
สมบูรณ์แบบ อย่างที่คุณเห็น เรามีชื่อผู้ใช้
z@zsecurity org และรหัสผ่านจนถึงเก้าศูนย์
อย่างที่ฉันบอกไป วิธีเดียวที่จะใช้งานได้คือถ้าผู้ใช้เข้า
Facebook ผ่านเว็บไซต์อื่นที่ไม่ได้ใช้ HSTS
ถ้าเข้าแถบ URL แล้วพิมพ์ facebook com เอง เราไม่สามารถทำเช่นนี้ได้
นั่นเป็นสาเหตุที่ถือว่าเป็นวิธีแก้ปัญหาบางส่วนและไม่ใช่วิธีแก้ปัญหาทั้งหมด