คอมพิวเตอร์ หน้าต่าง อินเทอร์เน็ต

เหมือนคนอยู่ตรงกลาง.. คำถามที่พบบ่อยทางเทคนิค เหตุใดคุณจึงต้องพึ่งพาอัลกอริทึมการเข้ารหัสแบบคลาสสิก

การโจมตีแบบแทรกกลางเป็นชื่อทั่วไปสำหรับเทคนิคต่างๆ ที่มุ่งเป้าไปที่การเข้าถึงการรับส่งข้อมูลในฐานะตัวกลาง เนื่องจากเทคนิคเหล่านี้มีหลากหลาย จึงเป็นปัญหาที่จะใช้เครื่องมือเดียวในการตรวจจับการโจมตีเหล่านี้ซึ่งจะใช้ได้กับทุกสถานการณ์ที่เป็นไปได้ ตัวอย่างเช่น ในการโจมตีแบบแทรกกลางบนเครือข่ายท้องถิ่น โดยปกติจะใช้การปลอมแปลง ARP (การวางยาพิษ) และเครื่องมือตรวจจับการโจมตีแบบแทรกกลางการสื่อสารจำนวนมากจะติดตามการเปลี่ยนแปลงในคู่ที่อยู่อีเทอร์เน็ต/หรือรายงานกิจกรรม ARP ที่น่าสงสัยโดยการตรวจสอบคำขอ/การตอบสนองของ ARP แบบพาสซีฟ แต่หากการโจมตีนี้ใช้กับพร็อกซีเซิร์ฟเวอร์ VPN หรือตัวเลือกอื่น ๆ ที่กำหนดค่าที่เป็นอันตรายซึ่งไม่ได้ใช้ ARP Poisoning เครื่องมือดังกล่าวก็ช่วยอะไรไม่ได้

วัตถุประสงค์ของส่วนนี้คือเพื่อทบทวนเทคนิคบางอย่างในการตรวจจับการโจมตีแบบแทรกกลาง รวมถึงเครื่องมือบางอย่างที่ออกแบบมาเพื่อพิจารณาว่าคุณตกเป็นเป้าหมายของการโจมตี MitM หรือไม่ เนื่องจากวิธีการและสถานการณ์การใช้งานที่หลากหลาย จึงไม่สามารถรับประกันการตรวจจับได้ 100%

1. การตรวจจับการปรับเปลี่ยนการจราจร

ดังที่ได้กล่าวไปแล้ว การโจมตีแบบแทรกกลางไม่ได้ใช้การปลอมแปลง ARP เสมอไป ดังนั้นแม้ว่าการตรวจจับกิจกรรมที่เลเยอร์ ARP จะเป็นวิธีการตรวจจับที่ได้รับความนิยมมากที่สุด แต่วิธีการทั่วไปก็คือการตรวจจับการปรับเปลี่ยนการรับส่งข้อมูล โปรแกรม mitmcanary สามารถช่วยเราได้ในเรื่องนี้

หลักการทำงานของโปรแกรมคือส่งคำขอ "ควบคุม" และบันทึกคำตอบที่ได้รับ หลังจากนั้น ระบบจะทำซ้ำคำขอเดิมในช่วงเวลาหนึ่งและเปรียบเทียบการตอบสนองที่ได้รับ โปรแกรมค่อนข้างชาญฉลาด และเพื่อหลีกเลี่ยงผลบวกลวง โปรแกรมจะระบุองค์ประกอบแบบไดนามิกในการตอบสนองและประมวลผลอย่างถูกต้อง ทันทีที่โปรแกรมตรวจพบร่องรอยกิจกรรมของเครื่องมือสำหรับการโจมตี MitM ก็จะรายงานสิ่งนี้

ตัวอย่างว่าเครื่องมือบางอย่างสามารถ “สืบทอด” ได้อย่างไร:

  • ตามค่าเริ่มต้น MITMf จะเปลี่ยน HTTPS URL ทั้งหมดในโค้ด HTML เป็น HTTP ตรวจพบโดยการเปรียบเทียบเนื้อหา HTTP
  • Zarp + MITMProxy, MITMProxy มีฟังก์ชันที่ช่วยให้คุณล้างการบีบอัด HTTP ซึ่งใช้เพื่อความโปร่งใสของการรับส่งข้อมูล การรวมกันนี้ตรวจพบโดยการหายไปของการบีบอัดปัจจุบันก่อนหน้านี้
  • ผู้ตอบกลับ ระบุได้จากการเปลี่ยนแปลงอย่างกะทันหันในการเปลี่ยนแปลงการตอบสนองของ mDNS: การตอบสนองที่ไม่คาดคิด คำตอบคือภายใน แต่คาดหวังจากภายนอก การตอบสนองแตกต่างจาก IP ที่คาดหวัง
  • MITMCanary กับ MITMf:

  • MITMCanary กับผู้ตอบกลับ:

  • MITMCanary กับ Zarp + MITMProxy:

Sudo pip ติดตั้ง Cython sudo apt-get ติดตั้ง python-kivy python-dbus sudo pip ติดตั้ง plyer uuid คำขอการวิเคราะห์ urlopen simplejson datetime git clone https://github.com/CylanceSPEAR/mitmcanary.git cd mitmcanary/

ดังที่ได้กล่าวไปแล้ว mitmcanary จำเป็นต้องเริ่มทำงานกับคำขอควบคุม เมื่อต้องการทำเช่นนี้ ให้ไปที่ไดเร็กทอรี

บริการซีดี/

และเรียกใช้ไฟล์ setup_test_persistence.py:

Python2 setup_test_persistence.py

การดำเนินการนี้จะใช้เวลาสักครู่ - รอให้เสร็จสิ้น ไม่ควรมีข้อความแสดงข้อผิดพลาด (หากเป็นเช่นนั้น แสดงว่าคุณขาดการอ้างอิงบางอย่าง)

ผลลัพธ์จะเป็นดังนี้:

Mial@HackWare:~/bin/mitmcanary/service$ python2 setup_test_persistence.py ตรวจพบเวอร์ชันการกำหนดค่าที่เก่ากว่า (0 แทนที่จะเป็น 14) กำลังอัปเกรดการกำหนดค่าอยู่ระหว่างดำเนินการ ล้างบันทึกเริ่มทำงานแล้ว กำลังวิเคราะห์... ล้างข้อมูลเสร็จแล้ว! บันทึกการเข้าสู่ระบบ /home/mial/.kivy/logs/kivy_16-11-01_0.txt v1.9.1 v2.7.12+ (ค่าเริ่มต้น 1 ก.ย. 2559, 20:27:38 น.)

หลังจากกระบวนการนี้เสร็จสิ้น ให้ดำเนินการในไดเร็กทอรีเดียวกัน (ซึ่งจะเริ่มกระบวนการเบื้องหลัง):

Python2 main.py

หลังจากนั้นให้เปิดหน้าต่างเทอร์มินัลใหม่และไปที่ไดเร็กทอรีสิ้นสุดด้วย mitmcanary ไดเร็กทอรีของฉันคือ bin/mitmcanary/ ดังนั้นฉันจึงเข้าไป

ถังซีดี/mitmcanary/

และทำที่นั่น:

Python2 main.py

หน้าต่างแรกจะแสดงสิ่งที่ต้องการ:

Mial@HackWare:~/bin/mitmcanary/service$ python2 main.py บันทึกบันทึกใน /home/mial/.kivy/logs/kivy_16-11-01_1.txt v1.9.1 v2.7.12+ (ค่าเริ่มต้น 1 กันยายน 2559 20:27:38) กำลังใช้ สำหรับการฟังซ็อกเก็ตสำหรับ Tuio บน 127.0.0.1:3000 นอนเป็นเวลา 60 วินาที นอนเป็นเวลา 60 วินาที นอนเป็นเวลา 60 วินาที นอนเป็นเวลา 60 วินาที นอนเป็นเวลา 60 วินาที นอนเป็นเวลา 60 วินาที

เหล่านั้น. โปรแกรมส่งคำขอควบคุมนาทีละครั้งและมองหาสัญญาณของการโจมตีแบบแทรกกลาง

หน้าต่างที่สองยังมีเอาต์พุต + หน้าต่างมืดจะเปิดขึ้น ผู้เขียนโปรแกรมเรียกหน้าต่างนี้ว่า "ส่วนต่อประสานกราฟิก":

คุณสามารถรอสักครู่แล้วท่องอินเทอร์เน็ตเพื่อให้แน่ใจว่าโปรแกรมไม่มีคำเตือนที่ผิดพลาด

มาลองใช้โปรแกรมคลาสสิค Ettercap กัน

ฉันกำลังเปิดตัวการโจมตี MitM แบบปกติพร้อมการปลอมแปลง ARP mitmcanary ไม่ตอบสนองต่อการกัดตัวเอง เครื่องมือ mitmcanary จะสร้างการรับส่งข้อมูลเอง กล่าวคือ ผู้ใช้ไม่จำเป็นต้องดำเนินการใดๆ หลังจากนั้นครู่หนึ่ง คำเตือนเดียวจะปรากฏขึ้น ซึ่งจะไม่ได้รับการยืนยันในระหว่างการตรวจสอบครั้งต่อไป แต่คำเตือนที่คล้ายกันจะปรากฏขึ้นหลังจากนั้นไม่กี่นาที หากไม่มีการวิเคราะห์เพิ่มเติม ฉันยากที่จะบอกว่านี่เป็นตัวอย่างของผลบวกลวงหรือไม่ - มันดูคล้ายกันมาก ค่อนข้างเป็นไปได้ที่คำเตือนนี้มีสาเหตุมาจากความล้มเหลวในการสื่อสารเนื่องจากความจำเป็นในการรับส่งข้อมูลเพื่อผ่านเส้นทางเพิ่มเติม หรือเนื่องจากลักษณะเฉพาะของการเชื่อมต่ออินเทอร์เน็ตคุณภาพต่ำของฉัน

เนื่องจากผลลัพธ์ไม่ชัดเจน (มีแนวโน้มว่า “ไม่” มากกว่า “ใช่”) เรามาลองใช้โปรแกรม Bettercap ซึ่งมีโมดูลที่หลากหลายกันดีกว่า ฉันไม่สงสัยเลยว่าหากเราใช้ปลั๊กอิน Ettercap และ/หรือโปรแกรมเพิ่มเติมต่างๆ เพื่อขยายฟังก์ชันการทำงาน เราก็จะ "สว่างขึ้น" สำหรับ mitmcanary ด้วย

เพื่อความบริสุทธิ์ของการทดลอง ฉันรีสตาร์ทอุปกรณ์ เรียกใช้ mitmcanary บนเครื่องที่ถูกโจมตี และ Bettercap บนเครื่องที่ถูกโจมตี ในขณะเดียวกันก็ไม่จำเป็นต้องส่งคำขอควบคุมอีกครั้งบนเครื่องที่ถูกโจมตี - โดยจะถูกบันทึกไว้ในไฟล์ภายในไดเร็กทอรีพร้อมกับโปรแกรม เหล่านั้น. การเริ่มบริการและอินเทอร์เฟซแบบกราฟิกก็เพียงพอแล้ว

และในเครื่องโจมตีเราจะเปิดตัว Bettercap โดยเปิดใช้งาน parsers:

ซูโด้ ดีกว่าแคป -X

คำเตือนส่วนบุคคลปรากฏขึ้น ซึ่งดูเหมือนผลบวกลวงมากกว่า

แต่รันคำสั่งนี้:

Sudo Bettercap -X --พรอกซี

บนเครื่องที่ถูกโจมตี จะมีการสร้างคำเตือนจำนวนมากเกี่ยวกับการโจมตีแบบแทรกกลางที่เป็นไปได้:

ดังนั้น ยิ่งเครื่องมือโจมตีแบบแทรกกลางข้อมูลมีประสิทธิภาพมากเท่าใด ก็จะยิ่งมีร่องรอยหลงเหลืออยู่ในการรับส่งข้อมูลมากขึ้นเท่านั้น สำหรับการใช้งานจริงของ mitmcanary จะต้องเป็นไปตามเงื่อนไขต่อไปนี้:

  • ทำการร้องขอครั้งแรกบนเครือข่ายที่เชื่อถือได้ เมื่อคุณแน่ใจว่าไม่มีตัวกลางในการส่งข้อมูลการรับส่งข้อมูล
  • แก้ไขทรัพยากรที่มีการร้องขอการตรวจสอบ เนื่องจากผู้โจมตีมืออาชีพสามารถเพิ่มทรัพยากรเริ่มต้นให้กับข้อยกเว้น ซึ่งจะทำให้มองไม่เห็นเขาในเครื่องมือนี้

2. การตรวจจับการปลอมแปลง ARP (พิษแคช ARP)

บ่อยครั้งที่การโจมตีแบบแทรกกลางบนเครือข่ายท้องถิ่นเริ่มต้นด้วยการเป็นพิษของ ARP นั่นคือเหตุผลที่เครื่องมือจำนวนมากที่ออกแบบมาเพื่อตรวจจับการโจมตี MitM นั้นใช้กลไกในการตรวจสอบการเปลี่ยนแปลงในแคช ARP ซึ่งกำหนดการโต้ตอบระหว่างอีเธอร์เน็ต (ที่อยู่ MAC) และที่อยู่ IP

ตามตัวอย่างของโปรแกรมดังกล่าว เราสามารถจำ arpwatch, arpalert และโปรแกรมใหม่จำนวนมากได้ โปรแกรม ArpON ไม่เพียงตรวจสอบการเปลี่ยนแปลงในแคช ARP เท่านั้น แต่ยังปกป้องการเปลี่ยนแปลงอีกด้วย

ตามตัวอย่าง เรามารัน arpwatch ในโหมดดีบัก โดยไม่ต้องสร้างส้อมในพื้นหลังและส่งข้อความทางไปรษณีย์ แต่ข้อความจะถูกส่งไปยัง stderr แทน (เอาต์พุตข้อผิดพลาดมาตรฐาน)

Sudo /usr/sbin/arpwatch -d

มาเปิดตัว Ettercap บนเครื่องโจมตีและเริ่มการปลอมแปลง ARP บนเครื่องที่ถูกโจมตีเราสังเกตเห็น:

โปรแกรม arpwatch จะช่วยให้คุณค้นหาอุปกรณ์ใหม่ที่เชื่อมต่อกับเครือข่ายท้องถิ่นของคุณได้อย่างรวดเร็วรวมถึงการเปลี่ยนแปลงในแคช ARP

เครื่องมืออีกอย่างสำหรับการตรวจจับการปลอมแปลง ARP แบบเรียลไทม์คือปลั๊กอิน Ettercap ที่เรียกว่า arp_cop. บนเครื่องที่ถูกโจมตี ให้เปิด Ettercap ดังนี้:

Sudo ettercap -TQP arp_cop ///

และผู้โจมตีเราจะเริ่มวางยาพิษ ARP คำเตือนจะเริ่มปรากฏบนเครื่องที่ถูกโจมตีทันที:

3. การตรวจจับการปลอมแปลง DNS

การปลอมแปลง DNS บ่งชี้ว่ามีตัวกลางระหว่างคุณและปลายทางที่สามารถแก้ไขการรับส่งข้อมูลของคุณได้ คุณจะตรวจสอบได้อย่างไรว่าบันทึก DNS ถูกปลอมแปลง? วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการเปรียบเทียบกับคำตอบจากเนมเซิร์ฟเวอร์ที่คุณเชื่อถือ แต่รายการในการตอบกลับที่ส่งถึงคำขอของคุณยังสามารถถูกแทนที่ได้...

เหล่านั้น. คุณต้องตรวจสอบผ่านช่องทางที่เข้ารหัส (เช่น ผ่าน Tor) หรือใช้การตั้งค่าที่ไม่ได้มาตรฐาน (พอร์ตอื่น TCP แทน UDP) นี่คือสิ่งที่โปรแกรม sans จาก XiaoxiaoPu ได้รับการออกแบบโดยประมาณ (อย่างน้อยก็เท่าที่ฉันเข้าใจ) เมื่อใช้โปรแกรมนี้ ฉันสามารถเปลี่ยนเส้นทางคำขอ DNS ผ่าน Tor และผ่านการตั้งค่าที่ไม่ได้มาตรฐานไปยังเซิร์ฟเวอร์ DNS ของฉันได้ แต่ฉันไม่สามารถให้เธอแสดงข้อความเกี่ยวกับการปลอมแปลงการตอบสนอง DNS ได้ หากไม่มีสิ่งนี้ ความหมายของโปรแกรมก็จะหายไป

ฉันไม่พบทางเลือกอื่นที่คุ้มค่ากว่านี้อีกแล้ว

โดยหลักการแล้ว เนื่องจากผู้ปลอมแปลง DNS มักจะตรวจสอบเฉพาะพอร์ต 53 และเฉพาะโปรโตคอล UDP แม้จะตรวจสอบด้วยตนเองก็เพียงพอที่จะตรวจสอบข้อเท็จจริงของการปลอมแปลง DNS แม้ว่าจะต้องใช้เซิร์ฟเวอร์ DNS ของคุณเองที่มีการกำหนดค่าที่ไม่ได้มาตรฐานก็ตาม ตัวอย่างเช่น บนเครื่องโจมตี ฉันได้สร้างไฟล์ขึ้นมา dns.confโดยมีเนื้อหาดังนี้

mi-al.ru ท้องถิ่น

เหล่านั้น. เมื่อขอบันทึก DNS สำหรับเว็บไซต์ mi-al.ru IP ของเครื่องของผู้โจมตีจะถูกส่งแทน IP จริง

ฉันวิ่งบนเครื่องโจมตี:

Sudo ดีกว่าแคป --dns dns.conf

และสำหรับตัวที่ถูกโจมตี ฉันจะตรวจสอบสองครั้ง:

ขุด mi-al.ru # และขุด mi-al.ru -p 4560 @ 185.117.153.79

ผลลัพธ์:

Mial@HackWare:~$ ขุด mi-al.ru ;<<>> DiG 9.10.3-P4-เดเบียน<<>> mi-al.ru ;; ตัวเลือกส่วนกลาง: +cmd ;; มีคำตอบ: ;; ->>ส่วนหัว<<- opcode: QUERY, status: NOERROR, id: 51993 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;mi-al.ru. IN A ;; ANSWER SECTION: mi-al.ru. 86400 IN A 192.168.1.48 ;; Query time: 2 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Wed Nov 02 09:25:20 MSK 2016 ;; MSG SIZE rcvd: 42 mial@HackWare:~$ dig mi-al.ru -p 4560 @185.117.153.79 ; <<>> DiG 9.10.3-P4-เดเบียน<<>> mi-al.ru -p 4560 @185.117.153.79 ;; ตัวเลือกส่วนกลาง: +cmd ;; มีคำตอบ: ;; ->>ส่วนหัว<<- opcode: QUERY, status: NOERROR, id: 401 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;mi-al.ru. IN A ;; ANSWER SECTION: mi-al.ru. 3799 IN A 185.26.122.50 ;; Query time: 304 msec ;; SERVER: 185.117.153.79#4560(185.117.153.79) ;; WHEN: Wed Nov 02 09:25:27 MSK 2016 ;; MSG SIZE rcvd: 53

จะเห็นได้ว่าสำหรับคำขอ DNS "ปกติ" จะมีการส่ง IP ในเครื่อง 192.168.1.48 และเมื่อมีการร้องขอ DNS บนพอร์ตที่ผิดปกติ IP ของเซิร์ฟเวอร์ที่ถูกต้องจะถูกส่งไป

หากเซิร์ฟเวอร์ได้รับการกำหนดค่าให้ใช้ TCP (แทนที่จะเป็น UDP) คำสั่งจะมีลักษณะดังนี้:

ขุด mi-al.ru -p 4560 +tcp @ 185.117.153.79

เห็นได้ชัดว่ายังขาดเครื่องมือที่จะติดตามการตอบสนองของ DNS ในการรับส่งข้อมูล ตรวจสอบอีกครั้งกับแหล่งอื่น และส่งสัญญาณเตือนในกรณีที่มีการปลอมแปลง

เพื่อหลีกเลี่ยงการตั้งค่า DNS ระยะไกลของคุณเอง คุณสามารถสอบถามเนมเซิร์ฟเวอร์ผ่าน Tor ได้ เนื่องจากการรับส่งข้อมูล Tor ทั้งหมดได้รับการเข้ารหัส การตอบสนอง DNS ที่ได้รับในลักษณะนี้จึงอยู่นอกเหนือความสามารถของตัวกลาง หากยังไม่ได้ติดตั้ง Tor ให้ติดตั้ง

Sudo apt-get ติดตั้งทอร์

ซูโด้ pacman -S ทอร์

เริ่มบริการ:

Sudo systemctl เริ่มทอร์

หากคุณต้องการ ให้เพิ่มบริการนี้ในการเริ่มต้นระบบ:

Sudo systemctl เปิดใช้งานทอร์

เปิดไฟล์ /etc/tor/torrcและเพิ่มบรรทัดต่อไปนี้ที่นั่น:

DNSPort 530 AutomapHostsOnResolve 1 AutomapHostsSuffixes .exit, .onion

ให้ความสนใจกับหมายเลข 530 นี่คือหมายเลขพอร์ต แทนที่จะเป็น 530 คุณสามารถระบุพอร์ตอื่น (ที่ไม่ได้ใช้) ได้ สิ่งสำคัญคือการจำมัน

เราตรวจสอบอีกครั้ง:

ขุด mi-al.ru # และขุด mi-al.ru -p 530 @localhost

ตอนนี้เราระบุเป็นเซิร์ฟเวอร์ โลคัลโฮสต์และเขียนหมายเลขพอร์ตที่คุณระบุไว้ในการตั้งค่า /etc/tor/torrc

ดังที่คุณเห็นจากภาพหน้าจอต่อไปนี้ การโจมตีด้วยการปลอมแปลง DNS เกิดขึ้นบนเครื่องที่ทำการตรวจสอบ:

4. ค้นหาอินเทอร์เฟซเครือข่ายในโหมดที่หลากหลาย

หากมี (และโดยเฉพาะอย่างยิ่งหากปรากฏขึ้นอย่างกะทันหัน) อุปกรณ์ในโหมดสำส่อนบนเครือข่ายท้องถิ่นของคุณ สิ่งนี้ถือเป็นที่น่าสงสัยมาก แม้ว่าจะไม่ได้ระบุอย่างชัดเจนว่าเป็นการโจมตีแบบแทรกกลางก็ตาม

ในโหมดนี้ การ์ดเครือข่ายอนุญาตให้คุณรับแพ็กเก็ตทั้งหมดโดยไม่คำนึงว่าจะส่งถึงใครก็ตาม

ในสถานะปกติ อินเทอร์เฟซอีเทอร์เน็ตใช้การกรองแพ็กเก็ตเลเยอร์ลิงก์ และหากที่อยู่ MAC ในส่วนหัวปลายทางของแพ็กเก็ตที่ได้รับไม่ตรงกับที่อยู่ MAC ของอินเทอร์เฟซเครือข่ายปัจจุบันและไม่ได้ออกอากาศ แพ็กเก็ตนั้นจะถูกยกเลิก ในโหมด "สำส่อน" การกรองอินเทอร์เฟซเครือข่ายจะถูกปิดใช้งาน และแพ็กเก็ตทั้งหมด รวมถึงแพ็กเก็ตที่ไม่ได้ถูกกำหนดไว้สำหรับโหนดปัจจุบัน จะได้รับอนุญาตให้เข้าสู่ระบบ

ระบบปฏิบัติการส่วนใหญ่ต้องการสิทธิ์ของผู้ดูแลระบบเพื่อเปิดใช้งานโหมดที่หลากหลาย เหล่านั้น. การตั้งค่าการ์ดเครือข่ายเป็นโหมดสำส่อนเป็นการกระทำโดยเจตนาที่อาจใช้เพื่อวัตถุประสงค์ในการดมกลิ่น

หากต้องการค้นหาอินเทอร์เฟซเครือข่ายในโหมดที่หลากหลายจะมีปลั๊กอินชื่อ Ettercap เรียกว่า search_promisc.

ตัวอย่างการรันปลั๊กอิน:

Sudo ettercap -TQP search_promisc ///

การทำงานของปลั๊กอินไม่น่าเชื่อถืออย่างสมบูรณ์ อาจเกิดข้อผิดพลาดในการกำหนดโหมดอินเทอร์เฟซเครือข่าย

บทสรุป

วิธีการโจมตีแบบแทรกกลางข้อมูลบางวิธีทิ้งร่องรอยไว้มากมาย และบางวิธี (เช่น การค้นหาข้อมูลรับรองพร็อกซีแบบพาสซีฟ) ก็เป็นไปไม่ได้หรือแทบจะตรวจจับไม่ได้เลย

MTProto ใช้วิธีการดั้งเดิมเพื่อให้เกิดความน่าเชื่อถือในการสื่อสารเคลื่อนที่ที่มีช่องโหว่ในปัจจุบัน และความเร็วในการจัดส่งไฟล์ขนาดใหญ่ (เช่น รูปภาพ วิดีโอ และเอกสารที่มีขนาดสูงสุด 1 GB) เอกสารนี้มีจุดมุ่งหมายเพื่อชี้แจงรายละเอียดเกี่ยวกับระบบของเราและองค์ประกอบที่อยู่ที่อาจเข้าใจได้ยากเมื่อมองแวบแรก

เอกสารโปรโตคอลโดยละเอียดมีอยู่ในหน้านี้ หากคุณมีคำถามใด ๆ เขียนถึง ทวิตเตอร์.

บันทึก:แต่ละข้อความที่เข้ารหัสผ่าน MTProto จะมีข้อมูลต่อไปนี้เสมอ ซึ่งจะถูกตรวจสอบระหว่างการถอดรหัสเพื่อให้ระบบปลอดภัยจากปัญหาที่ทราบ:

  • ตัวระบุเซสชัน - รหัสเซสชัน;
  • ความยาวข้อความ - ความยาวข้อความ;

โน้ต 2:ดูความคิดเห็นเพิ่มเติมเกี่ยวกับการใช้งานและ แก้ไขโครงการ

ทำไมคุณไม่ใช้ X [ตัวเลือกของคุณ]

แม้ว่าจะมีวิธีอื่นในการบรรลุเป้าหมายการเข้ารหัสแบบเดียวกันนี้อย่างไม่ต้องสงสัย แต่เราเชื่อว่าโซลูชันปัจจุบันมีทั้งความน่าเชื่อถือและประสบความสำเร็จในเป้าหมายรองของเราในการทำให้ผู้ส่งสารที่ไม่ปลอดภัยมีประสิทธิภาพเหนือกว่าในแง่ของความเร็วและความเสถียรในการจัดส่ง

เหตุใดคุณจึงต้องพึ่งพาอัลกอริทึมการเข้ารหัสแบบคลาสสิก

เราชอบที่จะใช้อัลกอริธึมที่รู้จักกันดีซึ่งสร้างขึ้นในสมัยที่แบนด์วิดท์และพลังการประมวลผลเป็นคู่ที่หายาก อัลกอริธึมเหล่านี้มีผลกระทบอย่างมากต่อการพัฒนาแอปพลิเคชันสำหรับอุปกรณ์พกพาในปัจจุบันโดยบังคับให้ผู้เขียนกำจัดข้อบกพร่องที่ทราบ จุดอ่อนของอัลกอริธึมดังกล่าวเป็นที่รู้จักกันดีและถูกผู้โจมตีใช้ประโยชน์มานานหลายทศวรรษ เราใช้อัลกอริธึมเหล่านี้ในการใช้งานนี้ เนื่องจากตามความเห็นของเรา อัลกอริธึมเหล่านี้นำไปสู่การโจมตีที่ทราบแล้วไปสู่ความล้มเหลว อย่างไรก็ตาม เรายินดีที่จะเห็นหลักฐานที่ขัดแย้งกัน (จนถึงขณะนี้ยังไม่มีกรณีดังกล่าวเกิดขึ้น) เพื่อปรับปรุงระบบของเรา

ฉันเป็นผู้เชี่ยวชาญด้านความปลอดภัยและฉันเชื่อว่าโปรโตคอลของคุณไม่ปลอดภัย

คุณสามารถเข้าร่วมการแข่งขันของเราได้: Pavel Durov เสนอ Bitcoin มูลค่า 200,000 ดอลลาร์ให้กับคนแรกที่แฮ็ค MTProto คุณสามารถอ่านประกาศและคำถามที่พบบ่อยเกี่ยวกับการแข่งขันได้ หากคุณมีความคิดเห็นอื่น ๆ เรายินดีที่จะรับฟังความคิดเห็นเหล่านั้นที่ [ป้องกันอีเมล].

ป้องกันการโจมตีที่ทราบ

การโจมตีแบบธรรมดาที่รู้จัก

ตามคำจำกัดความ การโจมตีด้วยข้อความธรรมดาคือการโจมตีแบบเข้ารหัสลับประเภทหนึ่ง ซึ่งผู้โจมตีมีทั้งข้อความเวอร์ชันเข้ารหัสและข้อความธรรมดา AES IGE ที่ใช้ใน MTProto สามารถต้านทานการโจมตีดังกล่าวได้ นอกจากนี้ ข้อความธรรมดาใน MTProto จะมีเกลือเซิร์ฟเวอร์และรหัสเซสชันเสมอ

การโจมตีแบบข้อความธรรมดาแบบปรับตัวได้

ตามคำจำกัดความ การโจมตีด้วยข้อความธรรมดาที่ปรับเปลี่ยนได้คือการโจมตีประเภทหนึ่งในการวิเคราะห์การเข้ารหัสที่เกี่ยวข้องกับนักเข้ารหัสลับที่สามารถเลือกข้อความธรรมดาและรับข้อความเข้ารหัสที่เกี่ยวข้องได้ MTProto ใช้ AES ในโหมด IGE ซึ่งมีความปลอดภัยจากการโจมตีดังกล่าว เป็นที่ทราบกันดีว่า IGE มีความเสี่ยงต่อการโจมตีแบบบล็อกเชน แต่ MTProto จะแก้ไขปัญหานี้ในลักษณะที่อธิบายไว้ด้านล่าง ข้อความธรรมดาแต่ละข้อความที่จะเข้ารหัสประกอบด้วยข้อมูลต่อไปนี้ ซึ่งได้รับการตรวจสอบระหว่างการถอดรหัส:

  • เกลือเซิร์ฟเวอร์ (64 บิต);
  • หมายเลขลำดับข้อความ
  • เวลาที่ส่งข้อความ - เวลา

นอกจากนี้ หากต้องการแทนที่ข้อความธรรมดา คุณต้องใช้คีย์ AES และเวกเตอร์การเริ่มต้นที่ถูกต้อง ซึ่งขึ้นอยู่กับ auth_key สิ่งนี้ทำให้ MTProto ทนทานต่อการโจมตีด้วยข้อความธรรมดาที่ปรับเปลี่ยนได้

การโจมตี Ciphertext ที่ตรงกัน

ตามคำจำกัดความ การโจมตีไซเฟอร์เท็กซ์ที่เลือกคือการโจมตีด้วยการเข้ารหัสซึ่งนักเข้ารหัสจะรวบรวมข้อมูลเกี่ยวกับไซเฟอร์โดยการเลือกไซเฟอร์เท็กซ์และรับการถอดรหัสด้วยคีย์ที่ไม่รู้จัก ในการโจมตีดังกล่าว ผู้โจมตีสามารถป้อนไซเฟอร์เท็กซ์ที่รู้จักอย่างน้อยหนึ่งรายการเข้าสู่ระบบและรับข้อความธรรมดา ผู้โจมตีสามารถพยายามกู้คืนคีย์ที่ใช้สำหรับการถอดรหัสโดยใช้ข้อมูลนี้ ใน MTProto ทุกครั้งที่ถอดรหัสข้อความ จะมีการตรวจสอบเพื่อให้แน่ใจว่า msg_key ตรงกับ SHA-1 ของข้อมูลที่ถอดรหัส ข้อความธรรมดา (ข้อมูลที่ถอดรหัส) ยังมีข้อมูลเกี่ยวกับความยาวของข้อความ หมายเลขลำดับ และเกลือของเซิร์ฟเวอร์เสมอ สิ่งนี้จะลบล้างการโจมตีตามไซเฟอร์เท็กซ์ที่เลือก

เล่นซ้ำการโจมตี

การโจมตีซ้ำไม่สามารถทำได้เนื่องจากข้อความธรรมดาแต่ละข้อความประกอบด้วยเกลือของเซิร์ฟเวอร์ รหัสข้อความที่ไม่ซ้ำกัน และหมายเลขลำดับ

การโจมตีชายคนกลาง (MitM)

Telegram มีโหมดการสื่อสารสองโหมด: การแชทปกติซึ่งใช้การเข้ารหัสไคลเอนต์-เซิร์ฟเวอร์ และการแชทลับซึ่งใช้การเข้ารหัสจากต้นทางถึงปลายทางและได้รับการป้องกันจากการโจมตีจากคนกลาง การถ่ายโอนข้อมูลระหว่างไคลเอนต์และเซิร์ฟเวอร์ได้รับการปกป้องจากการโจมตีดังกล่าวระหว่างการสร้างคีย์ Diffie-Hellman ต้องขอบคุณอัลกอริธึมคีย์สาธารณะ RSA ที่สร้างไว้ในไคลเอนต์ Telegram หลังจากนั้น หากลูกค้าของคู่สนทนาเชื่อถือซอฟต์แวร์ของเซิร์ฟเวอร์ การแชทลับระหว่างพวกเขาจะได้รับการปกป้องโดยเซิร์ฟเวอร์จากการโจมตีจากคนกลาง โดยเฉพาะสำหรับผู้ที่ ไม่เชื่อถือเซิร์ฟเวอร์ มีการเปรียบเทียบรหัสลับในแอปพลิเคชัน คีย์จะแสดงเป็นรูปภาพ ด้วยการเปรียบเทียบคีย์ที่มองเห็นได้ ผู้ใช้สามารถตรวจสอบได้ว่าไม่มีการโจมตีแบบแทรกกลางตรงกลาง

การเข้ารหัส

คุณใช้ไอจีอีหรือเปล่า? มันถูกแฮ็ก!

ใช่ เราใช้ IGE แต่ในการใช้งานของเรา ทุกอย่างเรียบร้อยดี ความจริงที่ว่าเราไม่ได้ใช้ IGE ร่วมกับองค์ประกอบอื่นๆ ของระบบของเราในลักษณะเดียวกับที่ MAC พยายามแฮ็ก IGE อย่างไร้จุดหมาย IGE ก็เหมือนกับโหมด ciphertext block chaining (CBC) ทั่วไป ที่ไวต่อการโจมตีแบบปรับบล็อกได้ แต่การโจมตีแบบปรับตัวเป็นเพียงภัยคุกคามเมื่อมีการใช้คีย์เดียวกันในหลายข้อความ (ไม่เป็นเช่นนั้น)

การโจมตีแบบปรับเปลี่ยนได้นั้นเป็นไปไม่ได้ในทางทฤษฎีใน MTProto เนื่องจากการถอดรหัสข้อความ จะต้องพิมพ์อย่างหลังก่อน เนื่องจากคีย์ข้อความขึ้นอยู่กับเนื้อหา สำหรับการโจมตี CPA ที่ไม่สามารถปรับตัวได้ IGE ได้รับการปกป้องจากการโจมตีเหล่านั้น เช่นเดียวกับ CBC

มีหลายวิธีในการบรรลุผลตามที่ต้องการเกือบทุกครั้ง นอกจากนี้ยังใช้กับฟิลด์ความปลอดภัยของข้อมูลด้วย บางครั้ง เพื่อให้บรรลุเป้าหมาย คุณสามารถใช้กำลังดุร้าย มองหาช่องโหว่และพัฒนาช่องโหว่ด้วยตนเอง หรือฟังสิ่งที่ส่งผ่านเครือข่าย นอกจากนี้ตัวเลือกสุดท้ายมักจะเหมาะสมที่สุด นั่นคือเหตุผลที่วันนี้เราจะพูดถึงเครื่องมือที่จะช่วยให้เราจับข้อมูลที่มีค่าสำหรับเราจากการรับส่งข้อมูลเครือข่ายโดยใช้การโจมตี MITM สำหรับสิ่งนี้

MITMf

เริ่มจากหนึ่งในผู้สมัครที่น่าสนใจที่สุดกันก่อน นี่เป็นกรอบการทำงานทั้งหมดสำหรับการโจมตีแบบแทรกกลางซึ่งสร้างขึ้นบนพื้นฐานของ sergio-proxy เพิ่งรวมอยู่ใน Kali Linux หากต้องการติดตั้งด้วยตนเอง เพียงโคลนพื้นที่เก็บข้อมูลและรันคำสั่งสองสามคำสั่ง:

# setup.sh # pip ติดตั้ง -r ข้อกำหนด txt

# pip ติดตั้ง -r ข้อกำหนด txt

มีสถาปัตยกรรมที่สามารถขยายได้ผ่านปลั๊กอิน ในบรรดาสิ่งหลัก ๆ มีดังต่อไปนี้:

  • การปลอมแปลง - อนุญาตให้คุณเปลี่ยนเส้นทางการรับส่งข้อมูลโดยใช้การปลอมแปลง ARP/DHCP, การเปลี่ยนเส้นทาง ICMP และแก้ไขการสืบค้น DNS
  • Sniffer - ปลั๊กอินนี้ติดตามความพยายามในการเข้าสู่ระบบสำหรับโปรโตคอลต่างๆ
  • BeEFAutorun - อนุญาตให้คุณเปิดโมดูล BeEF โดยอัตโนมัติตามประเภทของระบบปฏิบัติการและเบราว์เซอร์ไคลเอนต์
  • AppCachePoison - ดำเนินการโจมตีพิษแคช
  • SessionHijacking - แย่งชิงเซสชันและจัดเก็บคุกกี้ผลลัพธ์ไว้ในโปรไฟล์ Firefly
  • BrowserProfiler - พยายามรับรายการปลั๊กอินที่เบราว์เซอร์ใช้
  • FilePwn - อนุญาตให้คุณแทนที่ไฟล์ที่ส่งผ่าน HTTP โดยใช้ Backdoor Factory และ BDFProxy
  • แทรก - แทรกเนื้อหาที่กำหนดเองลงในหน้า HTML
  • jskeylogger - ฝังคีย์ล็อกเกอร์ JavaScript ลงในหน้าไคลเอนต์

หากฟังก์ชันนี้ดูเหมือนว่าไม่เพียงพอสำหรับคุณ คุณสามารถเพิ่มฟังก์ชันของตนเองได้ตลอดเวลาโดยการใช้ส่วนขยายที่เหมาะสม

สีโป๊วไรเดอร์

ยูทิลิตี้อื่นที่ควรค่าแก่การเอาใจใส่ จริงอยู่ ซึ่งแตกต่างจากเครื่องมืออื่นๆ ทั้งหมดที่พิจารณาในปัจจุบัน เนื่องจากมีความเชี่ยวชาญเฉพาะด้านที่แคบมาก ตามที่ผู้เขียนโปรเจ็กต์กล่าวไว้ เขาได้รับแรงบันดาลใจในการสร้างยูทิลิตี้ดังกล่าวโดยข้อเท็จจริงที่ว่าในระหว่างการทดสอบการเจาะ ข้อมูลที่สำคัญที่สุดนั้นอยู่บนเซิร์ฟเวอร์ Linux/UNIX ซึ่งผู้ดูแลระบบเชื่อมต่อผ่าน SSH/Telnet/rlogin ยิ่งไปกว่านั้น ในกรณีส่วนใหญ่ การเข้าถึงเครื่องของผู้ดูแลระบบทำได้ง่ายกว่าเซิร์ฟเวอร์เป้าหมายมาก หลังจากเจาะเข้าไปในเครื่องของผู้ดูแลระบบแล้ว สิ่งที่เหลืออยู่คือต้องแน่ใจว่า PuTTY กำลังทำงานอยู่ และใช้เครื่องมือนี้เพื่อสร้างสะพานด้านหลังให้กับผู้โจมตี

ยูทิลิตี้นี้ช่วยให้คุณไม่เพียง แต่จับภาพ "การสื่อสาร" ระหว่างผู้ดูแลระบบและเซิร์ฟเวอร์ระยะไกล (รวมถึงรหัสผ่าน) แต่ยังดำเนินการคำสั่งเชลล์ตามอำเภอใจภายในเซสชันที่กำหนด ยิ่งไปกว่านั้น ทั้งหมดนี้จะเกิดขึ้นอย่างโปร่งใสอย่างแน่นอนสำหรับผู้ใช้ (ผู้ดูแลระบบ) หากคุณสนใจในรายละเอียดด้านเทคนิค เช่น วิธีการนำ PuTTY ไปใช้ในกระบวนการ ฉันขอแนะนำให้คุณอ่านการนำเสนอของผู้เขียน

ยูทิลิตี้ค่อนข้างเก่าเกิดเมื่อแปดปีที่แล้ว มีไว้สำหรับเซสชันการโคลนโดยการขโมยคุกกี้ ในการแย่งชิงเซสชัน เขามีทักษะพื้นฐานในการตรวจจับโฮสต์ (หากเชื่อมต่อกับเครือข่ายไร้สายหรือฮับแบบเปิด) และดำเนินการพิษ ARP ปัญหาเดียวก็คือทุกวันนี้ ไม่เหมือนเมื่อแปดปีที่แล้ว บริษัทขนาดใหญ่เกือบทั้งหมด เช่น Yahoo หรือ Facebook ใช้การเข้ารหัส SSL ซึ่งทำให้เครื่องมือนี้ไร้ประโยชน์โดยสิ้นเชิง อย่างไรก็ตาม ยังมีทรัพยากรบนอินเทอร์เน็ตเพียงพอที่ไม่ใช้ SSL ดังนั้นจึงเร็วเกินไปที่จะตัดยูทิลิตี้นี้ออก ข้อดีคือสามารถรวมเข้ากับ Firefox โดยอัตโนมัติและสร้างโปรไฟล์แยกต่างหากสำหรับแต่ละเซสชันที่ถูกสกัดกั้น ซอร์สโค้ดมีอยู่ในที่เก็บ และคุณสามารถสร้างได้ด้วยตัวเองโดยใช้ลำดับคำสั่งต่อไปนี้:

# apt-get ติดตั้ง build-essential libwxgtk2.8-dev libgtk2.0-dev libpcap-dev # g ++ $ (wx-config --cppflags --libs) -lpcap -o sessionthief * .cpp # setcap cap_net_raw, cap_net_admin = eip เซสชั่นขโมย

# apt-get ติดตั้ง build-essential libwxgtk2.8-dev libgtk2.0-dev libpcap-dev

# g++ $(wx-config --cppflags --libs) -lpcap -o sessionthief *.cpp

# setcap cap_net_raw,cap_net_admin=eip sessionthief

พร็อกซีFuzz

ProzyFuzz ไม่มีส่วนเกี่ยวข้องโดยตรงกับการโจมตี MITM ตามที่คุณสามารถเดาได้จากชื่อ เครื่องมือนี้ได้รับการออกแบบมาให้คลุมเครือ นี่คือ fuzzer เครือข่ายขนาดเล็กที่ไม่ได้กำหนดไว้ ซึ่งใช้งานใน Python ซึ่งจะสุ่มเปลี่ยนเนื้อหาของแพ็กเก็ตการรับส่งข้อมูลเครือข่าย รองรับโปรโตคอล TCP และ UDP คุณสามารถกำหนดค่าให้ฝอยเพียงด้านเดียวได้ ซึ่งจะมีประโยชน์เมื่อคุณต้องการทดสอบแอปพลิเคชันเครือข่าย (หรือโปรโตคอล) บางอย่างอย่างรวดเร็ว และพัฒนา PoC ตัวอย่างการใช้งาน:

Python พร็อกซีฟัซ -l -ร -พี

หลาม proxyfuzz -l -ร -พี

รายการตัวเลือกประกอบด้วย:

  • w - ระบุจำนวนคำขอที่ส่งก่อนที่จะเริ่มการฟัซซี่
  • c - คลุมเครือเฉพาะลูกค้า (ไม่เช่นนั้นทั้งสองฝ่าย)
  • s - ฟัซซี่เฉพาะเซิร์ฟเวอร์ (ไม่เช่นนั้นทั้งสองด้าน)
  • คุณ - โปรโตคอล UDP (มิฉะนั้นจะใช้ TCP)

คนกลาง

ยูทิลิตี้สำหรับการโจมตี MITM บนโปรโตคอลต่างๆ ที่นำเสนอในการประชุม DEF CON เวอร์ชันอัลฟ่ารองรับโปรโตคอล HTTP และมีปลั๊กอินเจ๋งๆ สามปลั๊กอินในคลังแสง:

  • Plugin-beef.py - แทรก Browser Exploitation Framework (BeEF) ลงในคำขอ HTTP ใด ๆ ที่มาจากเครือข่ายท้องถิ่น
  • Plugin-metasploit.py - ฝัง IFRAME ลงในคำขอที่ไม่ได้เข้ารหัส (HTTP) ซึ่งโหลดช่องโหว่ของเบราว์เซอร์จาก Metasploit
  • Plugin-keylogger.py - ฝังตัวจัดการเหตุการณ์ JavaScript onKeyPress สำหรับช่องข้อความทั้งหมดที่จะถูกส่งผ่าน HTTPS ทำให้เบราว์เซอร์ส่งรหัสผ่านที่ผู้ใช้ป้อนทีละอักขระไปยังเซิร์ฟเวอร์ของผู้โจมตีก่อนที่จะส่งแบบฟอร์มทั้งหมด

Middler ไม่เพียงแต่วิเคราะห์การรับส่งข้อมูลเครือข่ายโดยอัตโนมัติและค้นหาคุกกี้ในนั้น แต่ยังร้องขอคุกกี้จากไคลเอนต์อย่างอิสระด้วย นั่นคือกระบวนการจะเป็นแบบอัตโนมัติสูงสุด โปรแกรมรับประกันการรวบรวมบัญชีที่ไม่มีการป้องกันทั้งหมดบนเครือข่ายคอมพิวเตอร์ (หรือฮอตสปอตสาธารณะ) ที่มีการรับส่งข้อมูลที่สามารถเข้าถึงได้ เพื่อให้โปรแกรมทำงานได้อย่างถูกต้อง จะต้องติดตั้งแพ็คเกจต่อไปนี้บนระบบ: Scapy, libpcap, readline, libdnet, python-netfilter น่าเสียดายที่พื้นที่เก็บข้อมูลไม่ได้รับการอัปเดตเป็นเวลานาน ดังนั้นคุณจะต้องเพิ่มฟังก์ชันการทำงานใหม่ด้วยตนเอง

ยูทิลิตี้คอนโซลที่ช่วยให้คุณสามารถตรวจสอบและแก้ไขการรับส่งข้อมูล HTTP แบบโต้ตอบได้ ด้วยทักษะดังกล่าว ยูทิลิตี้นี้จึงไม่เพียงแต่ถูกใช้โดยเพนเทสเตอร์/แฮกเกอร์เท่านั้น แต่ยังรวมถึงนักพัฒนาทั่วไปที่ใช้มันด้วย เช่น เพื่อดีบักแอปพลิเคชันบนเว็บ ด้วยความช่วยเหลือนี้ คุณจะได้รับข้อมูลโดยละเอียดเกี่ยวกับคำขอที่แอปพลิเคชันทำและการตอบกลับที่ได้รับ นอกจากนี้ mitmproxy ยังสามารถช่วยในการศึกษาลักษณะเฉพาะของการทำงานของ REST API บางตัวได้ โดยเฉพาะที่มีการจัดทำเอกสารไว้ไม่ดี

การติดตั้งนั้นง่ายมาก:

$ sudo aptitude ติดตั้ง mitmproxy

เป็นที่น่าสังเกตว่า mitmproxy ยังช่วยให้คุณสามารถสกัดกั้นการรับส่งข้อมูล HTTPS โดยการออกใบรับรองที่ลงนามเองให้กับไคลเอนต์ ตัวอย่างที่ดีของวิธีตั้งค่าการสกัดกั้นและแก้ไขการรับส่งข้อมูลสามารถดูได้ที่นี่

ดมกลิ่น

โดยทั่วไปยูทิลิตี้นี้เป็นหนึ่งในสิ่งแรกที่ควรคำนึงถึงทันทีที่คุณได้ยิน
"การโจมตีของเอ็มไอทีเอ็ม" เครื่องมือนี้ค่อนข้างเก่า แต่ยังคงได้รับการอัปเดตอย่างต่อเนื่องซึ่งเป็นข่าวดี ไม่มีประโยชน์ที่จะพูดในรายละเอียดเกี่ยวกับความสามารถของมัน ในช่วงสิบสี่ปีของการดำรงอยู่ มันถูกกล่าวถึงบนอินเทอร์เน็ตมากกว่าหนึ่งครั้ง ตัวอย่างเช่น ในคำแนะนำเช่นนี้:

หรือคำแนะนำจากเว็บไซต์ของเรา:

สุดท้าย..

ตามปกติเราไม่ได้ดูยูทิลิตี้ทั้งหมด แต่เฉพาะยูทิลิตี้ที่ได้รับความนิยมมากที่สุดเท่านั้น นอกจากนี้ยังมีโครงการที่ไม่ค่อยมีใครรู้จักอีกมากมายที่เราอาจพูดถึงสักวันหนึ่ง อย่างที่คุณเห็น ไม่มีเครื่องมือขาดแคลนสำหรับการโจมตี MITM และซึ่งไม่ได้เกิดขึ้นบ่อยนัก เครื่องมือเจ๋งๆ ตัวหนึ่งก็ถูกนำมาใช้กับ Windows ไม่มีอะไรจะพูดเกี่ยวกับระบบ nix - มีความหลากหลายทั้งหมด ดังนั้นฉันคิดว่าคุณสามารถหาเครื่องมือที่เหมาะสมสำหรับการโจรกรรมได้เสมอ
ข้อมูลรับรองของผู้อื่น อ๊ะนั่นคือเพื่อการทดสอบ

โดยที่ผู้โจมตีได้เชื่อมต่อกับช่องทางระหว่างคู่สัญญา ขัดขวางโปรโตคอลการส่งข้อมูล ลบหรือบิดเบือนข้อมูล

หลักการโจมตี

การโจมตีมักจะเริ่มต้นด้วยการดักฟังช่องทางการสื่อสาร และจบลงด้วยการที่นักวิเคราะห์การเข้ารหัสพยายามแทนที่ข้อความที่ถูกดักฟัง ดึงข้อมูลที่เป็นประโยชน์จากข้อความนั้น และเปลี่ยนเส้นทางไปยังแหล่งข้อมูลภายนอก

สมมติว่าวัตถุ A วางแผนที่จะส่งข้อมูลบางอย่างไปยังวัตถุ B Object C มีความรู้เกี่ยวกับโครงสร้างและคุณสมบัติของวิธีการส่งข้อมูลที่ใช้ ตลอดจนข้อเท็จจริงของการส่งข้อมูลจริงตามแผนที่ C วางแผนจะดักจับ ในการโจมตี C “ปรากฏ” กับวัตถุ A เป็น B และวัตถุ B เป็น A วัตถุ A เข้าใจผิดว่ากำลังส่งข้อมูลไปยัง B จึงส่งไปยังวัตถุ C วัตถุ C เมื่อได้รับข้อมูลแล้ว และดำเนินการบางอย่างด้วย (เช่น คัดลอกหรือแก้ไขเพื่อวัตถุประสงค์ของตนเอง) ส่งต่อข้อมูลไปยังผู้รับเอง - B; ในทางกลับกัน วัตถุ B เชื่อว่าข้อมูลได้รับโดยตรงจาก A

ตัวอย่างการโจมตี

การแทรกโค้ดที่เป็นอันตราย

การโจมตีแบบแทรกกลางช่วยให้ผู้เข้ารหัสสามารถแทรกโค้ดลงในอีเมล คำสั่ง SQL และหน้าเว็บ (เช่น อนุญาตให้มีการแทรก SQL, การแทรก HTML/สคริปต์ หรือการโจมตี XSS) และแม้แต่แก้ไขไบนารีที่ผู้ใช้อัปโหลดเป็น เข้าถึงบัญชีผู้ใช้หรือเปลี่ยนพฤติกรรมของโปรแกรมที่ผู้ใช้ดาวน์โหลดจากอินเทอร์เน็ต

ดาวน์เกรดการโจมตี

คำว่า “การโจมตีแบบดาวน์เกรด” หมายถึงการโจมตีที่นักวิเคราะห์การเข้ารหัสบังคับให้ผู้ใช้ใช้ฟังก์ชันที่มีความปลอดภัยน้อยกว่า ซึ่งเป็นโปรโตคอลที่ยังคงรองรับด้วยเหตุผลด้านความเข้ากันได้ การโจมตีประเภทนี้สามารถทำได้บนโปรโตคอล SSH, IPsec และ PPTP

เพื่อป้องกันการโจมตีแบบดาวน์เกรด จะต้องปิดการใช้งานโปรโตคอลที่ไม่ปลอดภัยอย่างน้อยหนึ่งด้าน การสนับสนุนและการใช้โปรโตคอลที่ปลอดภัยตามค่าเริ่มต้นเพียงอย่างเดียวนั้นไม่เพียงพอ!

SSH V1 แทน SSH V2

ผู้โจมตีอาจพยายามเปลี่ยนพารามิเตอร์การเชื่อมต่อระหว่างเซิร์ฟเวอร์และไคลเอนต์เมื่อมีการสร้างการเชื่อมต่อระหว่างพวกเขา จากการพูดคุยที่งาน Blackhat Conference Europe 2003 นักวิเคราะห์การเข้ารหัสสามารถ "บังคับ" ไคลเอ็นต์ให้เริ่มเซสชัน SSH1 แทนที่จะเป็น SSH2 โดยเปลี่ยนหมายเลขเวอร์ชัน "1.99" สำหรับเซสชัน SSH เป็น "1.51" ซึ่งหมายถึงการใช้ SSH V1 . โปรโตคอล SSH-1 มีช่องโหว่ที่นักวิเคราะห์การเข้ารหัสสามารถโจมตีได้

ไอพีวินาที

ในสถานการณ์การโจมตีนี้ cryptanalyst หลอกลวงเหยื่อของเขาโดยคิดว่าเซสชัน IPsec ไม่สามารถเริ่มต้นที่ปลายอีกด้าน (เซิร์ฟเวอร์) ซึ่งส่งผลให้ข้อความถูกส่งต่ออย่างชัดเจนหากเครื่องโฮสต์ทำงานในโหมดย้อนกลับ

PPTP

ในขั้นตอนการเจรจาต่อรองพารามิเตอร์เซสชัน PPTP ผู้โจมตีสามารถบังคับให้เหยื่อใช้การรับรองความถูกต้อง PAP ที่มีความปลอดภัยน้อยกว่า MSCHAP V1 (นั่นคือ "ย้อนกลับ" จาก MSCHAP V2 เป็นเวอร์ชัน 1) หรือไม่ใช้การเข้ารหัสเลย

ผู้โจมตีสามารถบังคับให้เหยื่อทำซ้ำขั้นตอนการเจรจาต่อรองพารามิเตอร์ของเซสชัน PPTP (ส่งแพ็กเก็ต Terminate-Ack) ขโมยรหัสผ่านจากอุโมงค์ที่มีอยู่ และทำการโจมตีซ้ำ

การสื่อสารสาธารณะโดยไม่ปกป้องความถูกต้อง การรักษาความลับ ความพร้อมใช้งาน และความสมบูรณ์ของข้อมูล

วิธีการสื่อสารที่พบบ่อยที่สุดสำหรับกลุ่มนี้คือเครือข่ายโซเชียล บริการอีเมลสาธารณะ และระบบส่งข้อความโต้ตอบแบบทันที เจ้าของทรัพยากรที่ให้บริการการสื่อสารสามารถควบคุมข้อมูลที่แลกเปลี่ยนระหว่างผู้สื่อข่าวได้อย่างเต็มที่ และสามารถทำการโจมตีได้อย่างอิสระเมื่อใดก็ได้ตามดุลยพินิจของเขาเอง

แตกต่างจากสถานการณ์ก่อนหน้านี้ที่อิงด้านเทคนิคและเทคโนโลยีของการสื่อสาร ในกรณีนี้ การโจมตีจะขึ้นอยู่กับแง่มุมทางจิต ซึ่งก็คือแนวคิดที่ฝังแน่นอยู่ในใจของผู้ใช้ โดยไม่สนใจข้อกำหนดด้านความปลอดภัยของข้อมูล

การเข้ารหัสจะช่วยได้ไหม?

ลองพิจารณากรณีของธุรกรรม HTTP มาตรฐาน ในกรณีนี้ ผู้โจมตีสามารถแยกการเชื่อมต่อ TCP ดั้งเดิมออกเป็นสองการเชื่อมต่อใหม่ได้อย่างง่ายดาย: การเชื่อมต่อระหว่างเขากับไคลเอนต์ และอีกการเชื่อมต่อระหว่างเขากับเซิร์ฟเวอร์ สิ่งนี้ค่อนข้างง่ายที่จะทำ เนื่องจากแทบไม่มีการเชื่อมต่อระหว่างไคลเอนต์และเซิร์ฟเวอร์โดยตรง และในกรณีส่วนใหญ่พวกเขาจะเชื่อมต่อผ่านเซิร์ฟเวอร์ระดับกลางจำนวนหนึ่ง การโจมตี MITM สามารถดำเนินการได้บนเซิร์ฟเวอร์เหล่านี้

อย่างไรก็ตาม หากไคลเอนต์และเซิร์ฟเวอร์สื่อสารโดยใช้ HTTPS ซึ่งเป็นโปรโตคอลที่รองรับการเข้ารหัส การโจมตีแบบแทรกกลางก็สามารถดำเนินการได้เช่นกัน การเชื่อมต่อประเภทนี้ใช้ TLS หรือ SSL เพื่อเข้ารหัสคำขอ ซึ่งดูเหมือนว่าจะทำให้ช่องได้รับการปกป้องจากการดมกลิ่นและการโจมตี MITM ผู้โจมตีสามารถสร้างเซสชัน SSL สองเซสชันแยกกันสำหรับการเชื่อมต่อ TCP แต่ละรายการ ไคลเอนต์สร้างการเชื่อมต่อ SSL กับผู้โจมตี ซึ่งจะสร้างการเชื่อมต่อกับเซิร์ฟเวอร์ในทางกลับกัน ในกรณีเช่นนี้ เบราว์เซอร์มักจะเตือนว่าใบรับรองไม่ได้ลงนามโดยผู้ออกใบรับรองที่เชื่อถือได้ แต่ผู้ใช้ทั่วไปของเบราว์เซอร์ที่ล้าสมัยสามารถข้ามคำเตือนนี้ได้อย่างง่ายดาย นอกจากนี้ ผู้โจมตีอาจมีใบรับรองที่ลงนามโดยหน่วยงานออกใบรับรองหลัก (เช่น บางครั้งใบรับรองดังกล่าวใช้สำหรับ DLP) และไม่สร้างคำเตือน นอกจากนี้ยังมีการโจมตี HTTPS หลายครั้ง ดังนั้นโปรโตคอล HTTPS จึงไม่สามารถถือว่าได้รับการปกป้องจากการโจมตี MITM สำหรับผู้ใช้ทั่วไป [ ] มีมาตรการหลายอย่างที่ป้องกันการโจมตี MITM บนไซต์ https โดยเฉพาะ HSTS ซึ่งห้ามการใช้การเชื่อมต่อ http จากไซต์ การปักหมุดใบรับรอง และการปักหมุดคีย์สาธารณะ HTTP ซึ่งห้ามการทดแทนใบรับรอง

การตรวจจับการโจมตี MITM

หากต้องการตรวจจับการโจมตีแบบแทรกกลาง คุณต้องวิเคราะห์การรับส่งข้อมูลเครือข่าย ตัวอย่างเช่น หากต้องการตรวจจับการโจมตี SSL คุณควรใส่ใจกับพารามิเตอร์ต่อไปนี้:

  • ที่อยู่ IP ของเซิร์ฟเวอร์
  • เซิร์ฟเวอร์ DNS
  • X.509 - ใบรับรองเซิร์ฟเวอร์
    • ใบรับรองลงนามด้วยตนเองหรือไม่
    • ใบรับรองลงนามโดยหน่วยงานออกใบรับรองหรือไม่
    • ใบรับรองถูกเพิกถอนหรือไม่?
    • ใบรับรองมีการเปลี่ยนแปลงเมื่อเร็วๆ นี้หรือไม่
    • ไคลเอนต์อื่น ๆ บนอินเทอร์เน็ตได้รับใบรับรองเดียวกันหรือไม่

การใช้งานการโจมตี MITM

โปรแกรมที่ระบุไว้สามารถใช้เพื่อดำเนินการโจมตีแบบแทรกกลางได้ เช่นเดียวกับการตรวจจับและทดสอบระบบเพื่อหาช่องโหว่

ดูสิ่งนี้ด้วย

  • Aspidistra (อังกฤษ) - เครื่องส่งวิทยุของอังกฤษที่ใช้ในระหว่าง "การรุกราน" ของสงครามโลกครั้งที่สอง ซึ่งเป็นรูปแบบหนึ่งของการโจมตีของ MITM
  • The Babington Plot (อังกฤษ) - การสมคบคิดต่อต้าน Elizabeth I ซึ่งในระหว่างนั้น Walsingham สกัดกั้นการติดต่อ

การโจมตีอื่นๆ

  • “Man in the Browser” คือการโจมตีประเภทหนึ่งที่ผู้โจมตีสามารถเปลี่ยนพารามิเตอร์ธุรกรรมได้ทันที และเปลี่ยนเพจที่โปร่งใสต่อเหยื่อโดยสิ้นเชิง
  • การโจมตีแบบ Meet-in-the-middle เป็นการโจมตีแบบเข้ารหัสที่ใช้ประโยชน์จากการแลกเปลี่ยนระหว่างเวลาและความทรงจำ เช่นเดียวกับการโจมตีวันเกิด
  • “การโจมตีแบบ Miss in the middle” เป็นวิธีที่มีประสิทธิภาพของสิ่งที่เรียกว่าการเข้ารหัสเชิงอนุพันธ์ที่เป็นไปไม่ได้
  • การโจมตีแบบรีเลย์เป็นอีกรูปแบบหนึ่งของการโจมตีแบบ MITM โดยอาศัยการส่งต่อข้อความที่ถูกดักไปยังผู้รับที่ถูกต้อง แต่ไม่ใช่ไปยังผู้รับที่มีเจตนาส่งข้อความให้
  • รูทคิทคือโปรแกรมที่ออกแบบมาเพื่อซ่อนร่องรอยการมีอยู่ของผู้โจมตี

เขียนบทวิจารณ์เกี่ยวกับบทความ "Man in the Middle Attack"

วรรณกรรม

ลิงค์

  • www.all.net/CID/Attack/Attack74.html
  • www.nag.ru/2003/0405/0405.shtml
  • www.schneier.com/blog/archives/2006/04/rfid_cards_and.html

ข้อความที่ตัดตอนมาจากชายผู้โจมตีตรงกลาง

“ควอร์ไทร์ ควอไทร์ ล็อกเมนท์” เจ้าหน้าที่กล่าว มองลงไปที่ชายร่างเล็กด้วยรอยยิ้มที่สุภาพและมีอัธยาศัยดี – Les Francais ซอนต์เดอบอนส์อองฟองต์ เยี่ยมเลย! โวยอน! Ne nous fachons pas, mon vieux, [อพาร์ทเมนต์ อพาร์ทเมนต์... ชาวฝรั่งเศสเป็นคนดี ให้ตายเถอะ อย่าทะเลาะกันเลยปู่] - เขาเสริมโดยตบไหล่ Gerasim ที่หวาดกลัวและเงียบงัน
- อาคา! Dites donc, on ne parle donc pas Francais dans cette Boutique? [จริงๆ แล้ว ที่นี่ไม่มีใครพูดภาษาฝรั่งเศสได้เหรอ?] เขากล่าวเสริม และมองไปรอบๆ และสบตากับปิแอร์ ปิแอร์ดึงตัวออกจากประตู
เจ้าหน้าที่หันไปหาเกราซิมอีกครั้ง เขาเรียกร้องให้ Gerasim แสดงห้องต่างๆ ในบ้านให้เขาดู
“อาจารย์จากไปแล้ว อย่าเข้าใจว่า... ของฉันเป็นของคุณ...” เกราซิมพูด พยายามทำให้คำพูดของเขาชัดเจนขึ้นโดยที่เขาพูดจากข้างในออกมา
เจ้าหน้าที่ฝรั่งเศสยิ้มแย้มกางมือไปที่จมูกของ Gerasim ทำให้เขารู้สึกว่าเขาไม่เข้าใจเขาและเดินกะโผลกกะเผลกไปที่ประตูที่ปิแอร์ยืนอยู่ ปิแอร์ต้องการย้ายออกไปเพื่อซ่อนตัวจากเขา แต่ในเวลานั้นเขาเห็นมาการ์ อเล็กเซชเอนตัวออกมาจากประตูห้องครัวที่เปิดอยู่พร้อมปืนพกอยู่ในมือ ด้วยความฉลาดแกมโกงของคนบ้า Makar Alekseich มองไปที่ชาวฝรั่งเศสและยกปืนพกขึ้นมาเล็ง
- บนเรือ!!! - คนเมาตะโกนกดไกปืน เจ้าหน้าที่ฝรั่งเศสหันกลับมาตามเสียงตะโกน และในขณะเดียวกันปิแอร์ก็รีบวิ่งไปที่ชายขี้เมา ขณะที่ปิแอร์คว้าและยกปืนพกขึ้น ในที่สุด Makar Alekseich ก็ใช้นิ้วยิงไกปืน และได้ยินเสียงปืนดังกึกก้องทำให้ทุกคนหูหนวกและปกคลุมทุกคนด้วยควันดินปืน ชาวฝรั่งเศสหน้าซีดแล้วรีบกลับไปที่ประตู
ปิแอร์ลืมความตั้งใจที่จะไม่เปิดเผยความรู้ภาษาฝรั่งเศสของเขา คว้าปืนพกแล้วขว้างปา วิ่งไปหาเจ้าหน้าที่และพูดกับเขาเป็นภาษาฝรั่งเศส
“Vous n" etes pa blesse? [คุณไม่ได้รับบาดเจ็บเหรอ?]” เขากล่าว
“Je crois que non” เจ้าหน้าที่ตอบ รู้สึกตัวเอง “mais je l"ai manque belle cette fois ci” เขากล่าวเสริม โดยชี้ไปที่ปูนปลาสเตอร์ที่หลุดลอยอยู่ในผนัง “Quel est cet homme? [ดูเหมือนไม่เลย” .. แต่นี่มันใกล้แล้ว ผู้ชายคนนี้คือใคร] - เจ้าหน้าที่พูดพร้อมมองปิแอร์อย่างเข้มงวด
“อา je suis vraiment au desespoir de ce qui vient d"arriver [อ่า ฉันสิ้นหวังกับสิ่งที่เกิดขึ้นจริงๆ]” ปิแอร์พูดอย่างรวดเร็วและลืมบทบาทของเขาไปโดยสิ้นเชิง “C”est un fou, un malheureux qui ne savait pas ce qu"il faisait. [นี่คือคนบ้าที่โชคร้ายที่ไม่รู้ว่าเขากำลังทำอะไรอยู่]
เจ้าหน้าที่เข้าไปหา Makar Alekseich และคว้าคอเสื้อไว้
Makar Alekseich ริมฝีปากของเขาแยกออกราวกับหลับไปเอนเอียงพิงกำแพง
“บริแกนด์ tu me la payeras” ชาวฝรั่งเศสพูดพร้อมยกมือออก
– Nous autres nous sommes clements apres la victoire: mais nous ne pardonnons pas aux Tratreres, [โจร คุณจะจ่ายเงินให้ฉันสำหรับสิ่งนี้] พี่ชายของเรามีความเมตตาหลังจากชัยชนะ แต่เราไม่ให้อภัยผู้ทรยศ” เขากล่าวเสริมด้วยสีหน้าเคร่งขรึมและด้วยท่าทางที่กระตือรือร้นที่สวยงาม
ปิแอร์พูดภาษาฝรั่งเศสต่อไปเพื่อชักชวนเจ้าหน้าที่ไม่ให้ลงโทษชายขี้เมาและบ้าคนนี้ ชาวฝรั่งเศสฟังอย่างเงียบ ๆ โดยไม่เปลี่ยนรูปลักษณ์ที่มืดมนของเขาและหันไปหาปิแอร์ด้วยรอยยิ้มทันที เขามองเขาอย่างเงียบ ๆ เป็นเวลาหลายวินาที ใบหน้าที่หล่อเหลาของเขาแสดงออกถึงความอ่อนโยนอย่างน่าเศร้า และเขาก็ยื่นมือออกไป
“Vous m"avez sauve la vie! Vous etes Francais [คุณช่วยชีวิตฉันไว้ คุณเป็นคนฝรั่งเศส” เขากล่าว สำหรับคนฝรั่งเศส ข้อสรุปนี้ไม่อาจปฏิเสธได้ มีเพียงชาวฝรั่งเศสเท่านั้นที่สามารถบรรลุการกระทำอันยิ่งใหญ่และช่วยชีวิตเขาได้ , m r Ramball "ฉัน capitaine du 13 me Leger [นาย Rambal กัปตันกองทหารเบาที่ 13] - เป็นสิ่งที่ยิ่งใหญ่ที่สุดอย่างไม่ต้องสงสัย
แต่ไม่ว่าข้อสรุปนี้และความเชื่อมั่นของเจ้าหน้าที่จะเป็นอย่างไรปิแอร์ก็คิดว่าจำเป็นต้องทำให้เขาผิดหวัง
“Je suis Russe [ฉันเป็นคนรัสเซีย”] ปิแอร์พูดอย่างรวดเร็ว
“Ti ti ti, a d"autres, [บอกเรื่องนี้ให้คนอื่นฟังด้วย" ชาวฝรั่งเศสพูดพร้อมโบกนิ้วไปที่จมูกแล้วยิ้ม "Tout a l"heure vous allez me conter tout ca" เขากล่าว – Charme de rencontrer ที่ไม่ร่วมชาติ เอ๊ะ เบียน! qu "allons nous faire de cet homme? [ตอนนี้คุณจะบอกฉันทั้งหมดนี้ ดีใจที่ได้พบเพื่อนร่วมชาติ ดี! เราควรทำอย่างไรกับผู้ชายคนนี้?] - เขาเสริมโดยพูดกับปิแอร์ราวกับว่าเขาเป็นน้องชายของเขา แม้ว่าปิแอร์จะไม่ใช่ชาวฝรั่งเศสแต่ครั้งหนึ่งเคยได้รับตำแหน่งที่สูงที่สุดในโลกนี้เขาก็ไม่สามารถละทิ้งได้” กล่าวด้วยสีหน้าและน้ำเสียงของเจ้าหน้าที่ชาวฝรั่งเศส สำหรับคำถามสุดท้าย ปิแอร์ อธิบายอีกครั้งว่าใครคือ มาการ์ อเล็กเซช อธิบายว่าก่อนที่พวกเขาจะมาถึง ชายขี้เมาและบ้าคลั่งคนหนึ่งได้ขโมยปืนพกบรรจุกระสุนซึ่งพวกเขาไม่มีเวลาที่จะเอาไปจากเขา และขอให้การกระทำของเขาไม่ได้รับโทษ
ชาวฝรั่งเศสยื่นหน้าอกออกมาแล้วทำท่าทางพระราชาด้วยมือของเขา
– Vous m"avez sauve la vie. Vous etes Francais. Vous me demandez sa Grace? Je vous l"accorde. Qu"on emmene cet homme [คุณช่วยชีวิตฉันไว้ คุณเป็นคนฝรั่งเศส คุณอยากให้ฉันยกโทษให้เขาไหม ฉันยกโทษให้เขา พาชายคนนี้ไปซะ” เจ้าหน้าที่ชาวฝรั่งเศสพูดอย่างรวดเร็วและกระตือรือร้นพร้อมจับมือของคนหนึ่ง ผู้ซึ่งได้รับค่าตอบแทนจากการช่วยชีวิตของเขาใน French Pierre และไปที่บ้านกับเขา
ทหารที่อยู่ในสนามได้ยินเสียงปืนจึงเข้าไปในห้องโถงถามว่าเกิดอะไรขึ้นและพร้อมจะลงโทษผู้รับผิดชอบ แต่เจ้าหน้าที่ก็ห้ามไว้โดยเด็ดขาด
“เกี่ยวกับปริมาณความต้องการที่ดีต่อออร่า” เขากล่าว พวกทหารก็จากไป ผู้มีระเบียบเรียบร้อยซึ่งขณะนั้นจัดการอยู่ในครัวได้เดินเข้ามาหาเจ้าหน้าที่
“Capitaine ils ont de la Soupe et du gigot de mouton dans la Cuisine” เขากล่าว - Faut il vous l "apporter? [กัปตัน พวกเขามีซุปและเนื้อแกะทอดอยู่ในครัว คุณอยากจะเอามาไหม]
“Oui, et le vin, [ใช่แล้ว และไวน์ด้วย”] กัปตันกล่าว

เจ้าหน้าที่ฝรั่งเศสและปิแอร์เข้าไปในบ้าน ปิแอร์พิจารณาว่าเป็นหน้าที่ของเขาที่จะต้องยืนยันกับกัปตันอีกครั้งว่าเขาไม่ใช่ชาวฝรั่งเศสและต้องการออกไป แต่เจ้าหน้าที่ชาวฝรั่งเศสไม่ต้องการได้ยินเรื่องนี้ เขาสุภาพมาก ใจดี มีอัธยาศัยดี และรู้สึกขอบคุณอย่างแท้จริงที่ได้ช่วยชีวิตเขาไว้ จนปิแอร์ไม่มีวิญญาณที่จะปฏิเสธเขาและนั่งลงกับเขาในห้องโถง ในห้องแรกที่พวกเขาเข้าไป เพื่อตอบสนองต่อคำยืนยันของปิแอร์ที่ว่าเขาไม่ใช่คนฝรั่งเศส กัปตันเห็นได้ชัดว่าไม่เข้าใจว่าใครจะปฏิเสธตำแหน่งที่ประจบสอพลอได้อย่างไร จึงยักไหล่และพูดว่าถ้าเขาต้องการส่งผ่านให้รัสเซียอย่างแน่นอน ก็ปล่อยให้เป็นเช่นนั้น แต่ ว่าถึงอย่างนั้น ทุกคนก็ยังคงเชื่อมโยงกับเขาตลอดไปด้วยความรู้สึกขอบคุณที่ช่วยชีวิตเขาไว้
หากชายคนนี้ได้รับพรสวรรค์อย่างน้อยก็สามารถเข้าใจความรู้สึกของผู้อื่นและเดาความรู้สึกของปิแอร์ได้ ปิแอร์ก็คงจะทิ้งเขาไป แต่การไม่สามารถทะลุทะลวงของชายคนนี้ต่อทุกสิ่งที่ไม่ใช่ตัวเขาเองทำให้ปิแอร์พ่ายแพ้
“Francais ou Prince russe incognito [ชาวฝรั่งเศสหรือเจ้าชายรัสเซียที่ไม่ระบุตัวตน” ชาวฝรั่งเศสกล่าวขณะมองดูชุดชั้นในที่สกปรกแต่บางของปิแอร์และแหวนบนมือของเขา – Je vous dois la vie je vous offre mon amitie. Un Francais n "oublie jamais ni une ดูถูก ni un service. Je vous offre mon amitie. Je ne vous dis que ca. [ฉันเป็นหนี้ชีวิตคุณและฉันเสนอมิตรภาพให้คุณ ชาวฝรั่งเศสไม่เคยลืมการดูถูกหรือการบริการ ฉันเสนอ มิตรภาพของฉันกับคุณ ฉันไม่พูดอะไรอีกแล้ว]
มีธรรมชาติและความสูงส่งที่ดีมากมาย (ในความหมายของฝรั่งเศส) ในน้ำเสียงในการแสดงออกทางสีหน้าในท่าทางของเจ้าหน้าที่คนนี้ที่ปิแอร์ตอบสนองด้วยรอยยิ้มโดยไม่รู้ตัวต่อรอยยิ้มของชาวฝรั่งเศสจับมือที่ยื่นออกมา
- Capitaine Ramball du treizieme leger, decore pour l "affaire du Sept, [กัปตัน Ramball, กองทหารเบาที่สิบสาม, Chevalier of the Legion of Honor สำหรับเหตุวันที่เจ็ดเดือนกันยายน" เขาแนะนำตัวเองด้วยรอยยิ้มที่พอใจในตัวเองและไม่อาจควบคุมได้ซึ่งมีรอยย่น ริมฝีปากของเขาอยู่ใต้หนวดของเขา - Voudrez vous bien me dire a qui" j"ai l"honneur de parler aussi agreablement au lieu de rester a l"ambulance avec la balle de ce fou dans le corps. [คุณจะเป็นเช่นนั้นหรือไม่] กรุณาบอกฉันทีว่าฉันอยู่กับใคร ฉันรู้สึกเป็นเกียรติที่ได้พูดคุยอย่างเป็นกันเอง แทนที่จะอยู่ที่สถานีแต่งตัวพร้อมกับกระสุนจากคนบ้าคนนี้ในร่างกายของฉัน?]
ปิแอร์ตอบว่าเขาไม่สามารถพูดชื่อของเขาได้และหน้าแดงเริ่มพยายามสร้างชื่อเพื่อพูดคุยเกี่ยวกับสาเหตุที่เขาไม่สามารถพูดแบบนี้ได้ แต่ชาวฝรั่งเศสขัดจังหวะเขาอย่างเร่งรีบ
“เดอเกรซ” เขากล่าว – Je comprends vos raisons, vous etes officier... officier superieur, peut être Vous avez porte les armes contre nous. Ce n"est pas mon Affairse. Je vous dois la vie. Cela me suffit. Je suis tout a vous. Vous etes gentilhomme? [ขอให้ครบถ้วนเถอะ ฉันเข้าใจคุณ คุณเป็นเจ้าหน้าที่... พนักงานเจ้าหน้าที่ บางที คุณรับใช้เรา นี่ไม่ใช่ธุรกิจของฉัน ฉันเป็นหนี้ชีวิตคุณ เพียงพอสำหรับฉันและฉันก็เป็นของคุณทั้งหมด คุณเป็นขุนนางหรือเปล่า] - เขาเสริมด้วยคำถามเล็กน้อย ปิแอร์โค้งคำนับ หัว. - Votre nom de bapteme, s'il vous plait? เฌเน่เรียกร้องผลประโยชน์ คุณปิแอร์ เชิญ... พาร์เฟ่ต์ C "est tout ce que je Desire Savoir [ชื่อของคุณ? ฉันไม่ถามอะไรอีกแล้ว นายปิแอร์ คุณว่าไหม? เยี่ยมมาก นั่นคือทั้งหมดที่ฉันต้องการ]
เมื่อนำเนื้อแกะทอด, ไข่คน, กาโลหะ, วอดก้าและไวน์จากห้องใต้ดินรัสเซียซึ่งชาวฝรั่งเศสนำมาด้วย Rambal ขอให้ปิแอร์มีส่วนร่วมในอาหารเย็นนี้และทันทีอย่างตะกละตะกลามและรวดเร็วเหมือนคนที่มีสุขภาพดีและหิวโหย คนเริ่มกิน เคี้ยวอย่างรวดเร็วด้วยฟันที่แข็งแรงของเขา ตบริมฝีปากอย่างต่อเนื่องและพูดว่ายอดเยี่ยมมาก! [วิเศษมาก ยอดเยี่ยมมาก!] ใบหน้าของเขาแดงก่ำและเต็มไปด้วยเหงื่อ ปิแอร์หิวและร่วมรับประทานอาหารเย็นด้วยความยินดี มอเรลมีระเบียบนำกระทะที่มีน้ำอุ่นมาและใส่ไวน์แดงหนึ่งขวดลงไป นอกจากนี้เขายังนำขวด kvass ซึ่งเขาเอามาจากครัวมาทดสอบด้วย เครื่องดื่มนี้เป็นที่รู้จักของชาวฝรั่งเศสและได้รับชื่อแล้ว พวกเขาเรียก kvass limonade de cochon (น้ำมะนาวหมู) และ Morel ยกย่อง limonade de cochon นี้ซึ่งเขาพบในห้องครัว แต่เนื่องจากกัปตันได้รับไวน์ระหว่างทางผ่านมอสโก เขาจึงมอบ kvass ให้กับ Morel และหยิบขวดบอร์โดซ์ขึ้นมาหนึ่งขวด เขาห่อขวดจนถึงคอด้วยผ้าเช็ดปากแล้วรินไวน์ให้ตัวเองกับปิแอร์ ความหิวและไวน์ที่พึงพอใจทำให้กัปตันฟื้นขึ้นมาอีก และเขาก็พูดคุยอย่างไม่หยุดหย่อนระหว่างมื้อเย็น
- Oui, mon cher monsieur Pierre, je vous dois une fiere chandelle de m"avoir sauve... de cet enrage... J"en ai assez, voyez vous, de balles dans le corps. En voila une (เขาชี้ไปที่สีข้างของเขา) Wagram et de deux a Smolensk” เขาแสดงรอยแผลเป็นที่แก้มของเขา - Et cette jambe, comme vous voyez, qui ne veut pas Marcher C"est a la grande bataille du 7 a la Moskowa que j"ai recu ca. Sacre dieu, c"etait beau. Il fallait voir ca, c"etait un deluge de feu. Vous nous avez taille une หยาบคาย besogne; vous pouvez vous en vanter, nom d"un petit bonhomme. Et, ma parole, malgre l"atoux que j"y ai gagne, je serais pret a recommencer. Je plains ceux qui n"ont pas vu ca. [ใช่แล้ว คุณปิแอร์ที่รัก ฉันจำเป็นต้องจุดเทียนดีๆ ให้กับคุณ เพราะคุณช่วยฉันจากคนบ้าคนนี้ เห็นมั้ย ฉันมีกระสุนอยู่ในตัวฉันมากพอแล้ว นี่คืออันหนึ่งใกล้ Wagram และอีกอันใกล้ Smolensk แล้วขานี้เห็นไหมไม่อยากขยับ นี่เป็นช่วงการรบใหญ่ครั้งที่ 7 ใกล้กรุงมอสโก เกี่ยวกับ! มันวิเศษมาก! คุณน่าจะเห็นว่ามันเป็นน้ำท่วมไฟ คุณให้งานยากแก่เรา คุณสามารถอวดมันได้ และโดยพระเจ้า แม้ว่าไพ่เด็ดใบนี้ (เขาชี้ไปที่ไม้กางเขน) ฉันก็พร้อมที่จะเริ่มต้นใหม่อีกครั้ง ฉันรู้สึกเสียใจสำหรับผู้ที่ไม่ได้เห็นสิ่งนี้]
“J"y ai ete [ฉันอยู่ที่นั่น]” ปิแอร์กล่าว
- อ้าว แย่จัง! “เอ้ เบียง แทน มิเยอซ์” ชาวฝรั่งเศสกล่าว – Vous etes de fiers ennemis, พูดจามีม La grande redoute a ete tenace, nom d"une pipe. Et vous nous l"avez fait ผู้ชำระเงิน J"y suis alle trois fois, tel que vous me voyez. Trois fois nous etions sur les canons et trois fois on nous a culbute et comme des capucins de cartes. โอ้!! c"etait beau, Monsieur Pierre. Vos grenadiers ont ete superbes, tonnerre de Dieu. Je les ai vu หก fois de suite serrer les rangs และนักเดินขบวนมาพร้อมกับบทละครที่ไม่ชัดเจน เลส โบซ์ ฮอมส์! Notre roi de Naples, qui s"y connait a crie: bravo! Ah, ah! soldat comme nous autres! - เขาพูดพร้อมยิ้มหลังจากเงียบไปครู่หนึ่ง - Tant mieux, tant mieux, นายปิแอร์ แย่มาก en bataille .. galants... - เขาขยิบตาด้วยรอยยิ้ม - avec les belles, voila les Francais, นายปิแอร์, n "est ce pas? [เอ่อ จริงเหรอ? ทั้งหมดดีขึ้น คุณเป็นศัตรูที่ดุร้ายฉันต้องยอมรับ ข้อสงสัยครั้งใหญ่ก็ระงับได้ดี และคุณทำให้เราจ่ายเงินแพง ฉันเคยไปที่นั่นสามครั้งอย่างที่คุณเห็นฉัน สามครั้งที่เราถือปืน สามครั้งที่เราถูกกระแทกเหมือนทหารไพ่ กองทัพบกของคุณยิ่งใหญ่มากโดยพระเจ้า ฉันเห็นว่าอันดับของพวกเขาปิดตัวลงหกครั้งและพวกเขาเดินขบวนออกมาเหมือนขบวนพาเหรด ผู้คนที่ยอดเยี่ยม! กษัตริย์ชาวเนเปิลส์ของเราซึ่งกินสุนัขในเรื่องเหล่านี้ก็ตะโกนบอกพวกเขาว่า: ไชโย! - ฮ่าฮ่า เจ้าคือพี่ชายทหารของเรา! - ยิ่งดี ยิ่งดี คุณปิแอร์ แย่มากในการต่อสู้ ใจดีต่อคนสวย คนเหล่านี้คือชาวฝรั่งเศส คุณปิแอร์ มันไม่ได้เป็น?]
กัปตันเป็นคนร่าเริงไร้เดียงสาและใจดีมีจิตใจดีและพอใจกับตัวเองจนปิแอร์เกือบจะขยิบตามองดูเขาอย่างร่าเริง อาจเป็นคำว่า "กล้าหาญ" ทำให้กัปตันคิดถึงสถานการณ์ในมอสโกว

โดยที่ผู้โจมตีได้เชื่อมต่อกับช่องทางระหว่างคู่สัญญา ขัดขวางโปรโตคอลการส่งข้อมูล ลบหรือบิดเบือนข้อมูล

YouTube สารานุกรม

    1 / 3

    út หมายเลข 4 จะเป็นแฮ็กเกอร์ได้อย่างไร? "การโจมตีของนายหน้า"! |การแฮ็กจาก A ถึง Z|

    út การโจมตี MiTM บน iOS เทคนิคและผลที่ตามมา

    ECO ลำดับเหตุการณ์ Bitcoin ของการโจมตีของแฮ็กเกอร์และการแลกเปลี่ยนแฮ็กในตลาด Cryptocurrency (2012 - 2018)

    คำบรรยาย

หลักการโจมตี

การโจมตีมักจะเริ่มต้นด้วยการดักฟังช่องทางการสื่อสาร และจบลงด้วยการที่นักวิเคราะห์การเข้ารหัสพยายามแทนที่ข้อความที่ถูกดักฟัง ดึงข้อมูลที่เป็นประโยชน์จากข้อความนั้น และเปลี่ยนเส้นทางไปยังแหล่งข้อมูลภายนอก

สมมติว่าวัตถุ A วางแผนที่จะส่งข้อมูลบางอย่างไปยังวัตถุ B Object C มีความรู้เกี่ยวกับโครงสร้างและคุณสมบัติของวิธีการส่งข้อมูลที่ใช้ ตลอดจนข้อเท็จจริงของการส่งข้อมูลจริงตามแผนที่ C วางแผนจะดักจับ ในการโจมตี C “ปรากฏ” กับวัตถุ A เป็น B และวัตถุ B เป็น A วัตถุ A เข้าใจผิดว่ากำลังส่งข้อมูลไปยัง B จึงส่งไปยังวัตถุ C วัตถุ C เมื่อได้รับข้อมูลแล้ว และดำเนินการบางอย่างด้วย (เช่น คัดลอกหรือแก้ไขเพื่อวัตถุประสงค์ของตนเอง) ส่งต่อข้อมูลไปยังผู้รับเอง - B; ในทางกลับกัน วัตถุ B เชื่อว่าข้อมูลได้รับโดยตรงจาก A

ตัวอย่างการโจมตี

การแทรกโค้ดที่เป็นอันตราย

การโจมตีแบบแทรกกลางช่วยให้ผู้เข้ารหัสสามารถแทรกโค้ดลงในอีเมล คำสั่ง SQL และหน้าเว็บ (เช่น อนุญาตให้มีการแทรก SQL, การแทรก HTML/สคริปต์ หรือการโจมตี XSS) และแม้แต่แก้ไขไบนารีที่ผู้ใช้อัปโหลดเป็น เข้าถึงบัญชีผู้ใช้หรือเปลี่ยนพฤติกรรมของโปรแกรมที่ผู้ใช้ดาวน์โหลดจากอินเทอร์เน็ต

ดาวน์เกรดการโจมตี

คำว่า “การโจมตีแบบดาวน์เกรด” หมายถึงการโจมตีที่นักวิเคราะห์การเข้ารหัสบังคับให้ผู้ใช้ใช้ฟังก์ชันที่มีความปลอดภัยน้อยกว่า ซึ่งเป็นโปรโตคอลที่ยังคงรองรับด้วยเหตุผลด้านความเข้ากันได้ การโจมตีประเภทนี้สามารถทำได้บนโปรโตคอล SSH, IPsec และ PPTP

เพื่อป้องกันการโจมตีแบบดาวน์เกรด จะต้องปิดการใช้งานโปรโตคอลที่ไม่ปลอดภัยอย่างน้อยหนึ่งด้าน การสนับสนุนและการใช้โปรโตคอลที่ปลอดภัยตามค่าเริ่มต้นเพียงอย่างเดียวนั้นไม่เพียงพอ!

SSH V1 แทน SSH V2

ผู้โจมตีอาจพยายามเปลี่ยนพารามิเตอร์การเชื่อมต่อระหว่างเซิร์ฟเวอร์และไคลเอนต์เมื่อมีการสร้างการเชื่อมต่อระหว่างพวกเขา จากการพูดคุยที่งาน Blackhat Conference Europe 2003 นักวิเคราะห์การเข้ารหัสสามารถ "บังคับ" ไคลเอ็นต์ให้เริ่มเซสชัน SSH1 ได้โดยเปลี่ยนหมายเลขเวอร์ชัน "1.99" สำหรับเซสชัน SSH เป็น "1.51" แทน SSH2 ซึ่งหมายถึงการใช้ SSH V1 . โปรโตคอล SSH-1 มีช่องโหว่ที่นักวิเคราะห์การเข้ารหัสสามารถโจมตีได้

ไอพีวินาที

ในสถานการณ์การโจมตีนี้ cryptanalyst หลอกลวงเหยื่อของเขาโดยคิดว่าเซสชัน IPsec ไม่สามารถเริ่มต้นที่ปลายอีกด้าน (เซิร์ฟเวอร์) ซึ่งส่งผลให้ข้อความถูกส่งต่ออย่างชัดเจนหากเครื่องโฮสต์ทำงานในโหมดย้อนกลับ

PPTP

ในขั้นตอนการเจรจาต่อรองพารามิเตอร์เซสชัน PPTP ผู้โจมตีสามารถบังคับให้เหยื่อใช้การรับรองความถูกต้อง PAP ที่มีความปลอดภัยน้อยกว่า MSCHAP V1 (นั่นคือ "ย้อนกลับ" จาก MSCHAP V2 เป็นเวอร์ชัน 1) หรือไม่ใช้การเข้ารหัสเลย

ผู้โจมตีสามารถบังคับให้เหยื่อทำซ้ำขั้นตอนการเจรจาต่อรองพารามิเตอร์ของเซสชัน PPTP (ส่งแพ็กเก็ต Terminate-Ack) ขโมยรหัสผ่านจากอุโมงค์ที่มีอยู่ และทำการโจมตีซ้ำ

การสื่อสารสาธารณะโดยไม่ปกป้องความถูกต้อง การรักษาความลับ ความพร้อมใช้งาน และความสมบูรณ์ของข้อมูล

วิธีการสื่อสารที่พบบ่อยที่สุดสำหรับกลุ่มนี้คือเครือข่ายโซเชียล บริการอีเมลสาธารณะ และระบบส่งข้อความโต้ตอบแบบทันที เจ้าของทรัพยากรที่ให้บริการการสื่อสารสามารถควบคุมข้อมูลที่แลกเปลี่ยนระหว่างผู้สื่อข่าวได้อย่างเต็มที่ และสามารถทำการโจมตีได้อย่างอิสระเมื่อใดก็ได้ตามดุลยพินิจของเขาเอง

แตกต่างจากสถานการณ์ก่อนหน้านี้ที่อิงด้านเทคนิคและเทคโนโลยีของการสื่อสาร ในกรณีนี้ การโจมตีจะขึ้นอยู่กับแง่มุมทางจิต ซึ่งก็คือแนวคิดที่ฝังแน่นอยู่ในใจของผู้ใช้ โดยไม่สนใจข้อกำหนดด้านความปลอดภัยของข้อมูล

การเข้ารหัสจะช่วยได้ไหม?

ลองพิจารณากรณีของธุรกรรม HTTP มาตรฐาน ในกรณีนี้ ผู้โจมตีสามารถแยกการเชื่อมต่อ TCP ดั้งเดิมออกเป็นสองการเชื่อมต่อใหม่ได้อย่างง่ายดาย: การเชื่อมต่อระหว่างเขากับไคลเอนต์ และอีกการเชื่อมต่อระหว่างเขากับเซิร์ฟเวอร์ สิ่งนี้ค่อนข้างง่ายที่จะทำ เนื่องจากแทบไม่มีการเชื่อมต่อระหว่างไคลเอนต์และเซิร์ฟเวอร์โดยตรง และในกรณีส่วนใหญ่พวกเขาจะเชื่อมต่อผ่านเซิร์ฟเวอร์ระดับกลางจำนวนหนึ่ง การโจมตี MITM สามารถดำเนินการได้บนเซิร์ฟเวอร์เหล่านี้

อย่างไรก็ตาม หากไคลเอนต์และเซิร์ฟเวอร์สื่อสารโดยใช้ HTTPS ซึ่งเป็นโปรโตคอลที่รองรับการเข้ารหัส การโจมตีแบบแทรกกลางก็สามารถดำเนินการได้เช่นกัน การเชื่อมต่อประเภทนี้ใช้ TLS หรือ SSL เพื่อเข้ารหัสคำขอ ซึ่งดูเหมือนว่าจะทำให้ช่องได้รับการปกป้องจากการดมกลิ่นและการโจมตี MITM ผู้โจมตีสามารถสร้างเซสชัน SSL สองเซสชันแยกกันสำหรับการเชื่อมต่อ TCP แต่ละรายการ ไคลเอนต์สร้างการเชื่อมต่อ SSL กับผู้โจมตีซึ่งจะสร้างการเชื่อมต่อกับเซิร์ฟเวอร์ในทางกลับกัน ในกรณีเช่นนี้ เบราว์เซอร์มักจะเตือนว่าใบรับรองไม่ได้ลงนามโดยผู้ออกใบรับรองที่เชื่อถือได้ แต่ผู้ใช้ทั่วไปของเบราว์เซอร์ที่ล้าสมัยสามารถข้ามคำเตือนนี้ได้อย่างง่ายดาย นอกจากนี้ ผู้โจมตีอาจมีใบรับรองที่ลงนามโดยหน่วยงานออกใบรับรองหลัก (เช่น บางครั้งใบรับรองดังกล่าวใช้สำหรับ DLP) และไม่สร้างคำเตือน นอกจากนี้ยังมีการโจมตี HTTPS หลายครั้ง ดังนั้นโปรโตคอล HTTPS จึงไม่สามารถถือว่าได้รับการปกป้องจากการโจมตี MITM สำหรับผู้ใช้ทั่วไป [ ] มีมาตรการหลายอย่างที่ป้องกันการโจมตี MITM บนไซต์ https โดยเฉพาะ HSTS ซึ่งห้ามการใช้การเชื่อมต่อ http จากไซต์ การปักหมุดใบรับรอง และ HTTP สาธารณะ คีย์ การปักหมุด ซึ่งห้ามการทดแทนใบรับรอง

การตรวจจับการโจมตี MITM

หากต้องการตรวจจับการโจมตีแบบแทรกกลาง คุณต้องวิเคราะห์การรับส่งข้อมูลเครือข่าย ตัวอย่างเช่น หากต้องการตรวจจับการโจมตี SSL คุณควรใส่ใจกับพารามิเตอร์ต่อไปนี้:

  • ที่อยู่ IP ของเซิร์ฟเวอร์
  • เซิร์ฟเวอร์ DNS
  • X.509 - ใบรับรองเซิร์ฟเวอร์
    • ใบรับรองลงนามด้วยตนเองหรือไม่
    • ใบรับรองลงนามโดยหน่วยงานออกใบรับรองหรือไม่
    • ใบรับรองถูกเพิกถอนหรือไม่?
    • ใบรับรองมีการเปลี่ยนแปลงเมื่อเร็วๆ นี้หรือไม่
    • ไคลเอนต์อื่น ๆ บนอินเทอร์เน็ตได้รับใบรับรองเดียวกันหรือไม่

การใช้งานการโจมตี MITM

โปรแกรมที่ระบุไว้สามารถใช้เพื่อดำเนินการโจมตีแบบแทรกกลางได้ เช่นเดียวกับการตรวจจับและทดสอบระบบเพื่อหาช่องโหว่

ดูสิ่งนี้ด้วย

  • Aspidistra (อังกฤษ) - เครื่องส่งวิทยุของอังกฤษที่ใช้ในระหว่าง "การรุกราน" ของสงครามโลกครั้งที่สอง ซึ่งเป็นรูปแบบหนึ่งของการโจมตีของ MITM
  • The Babington Conspiracy (ภาษาอังกฤษ) - การสมรู้ร่วมคิดกับ Elizabeth I ซึ่งในระหว่างนั้น Walsingham สกัดกั้นการติดต่อ

การโจมตีอื่นๆ

  • “Man-in-the-Browser” คือการโจมตีประเภทหนึ่งที่ผู้โจมตีสามารถเปลี่ยนพารามิเตอร์ธุรกรรมได้ทันที และเปลี่ยนหน้าที่โปร่งใสต่อเหยื่อโดยสิ้นเชิง
  • การโจมตีแบบ Meet-in-the-middle เป็นการโจมตีแบบเข้ารหัสที่ใช้ประโยชน์จากการแลกเปลี่ยนระหว่างเวลาและความทรงจำเช่นเดียวกับการโจมตีวันเกิด
  • “การสูญเสียตรงกลาง” (การโจมตีแบบ Miss ใน กลาง ) เป็นวิธีที่มีประสิทธิภาพของสิ่งที่เรียกว่าการเข้ารหัสเชิงอนุพันธ์ที่เป็นไปไม่ได้
  • การโจมตีแบบรีเลย์เป็นอีกรูปแบบหนึ่งของการโจมตีแบบ MITM โดยอาศัยการส่งต่อข้อความที่ถูกดักไปยังผู้รับที่ถูกต้อง แต่ไม่ใช่ไปยังผู้รับที่มีเจตนาส่งข้อความให้