การตรวจจับเซสชัน OpenVPN ในการรับส่งข้อมูล

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

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

 การตรวจจับเซสชัน OpenVPN ในการรับส่งข้อมูล

ระหว่างการทดลอง เครื่องวิเคราะห์สามารถระบุการเชื่อมต่อ OpenVPN ทดสอบได้สำเร็จ 1718 รายการ จากทั้งหมด 2000 รายการ ที่สร้างโดยไคลเอนต์ปลอม โดยใช้การกำหนดค่า OpenVPN ทั่วไป 40 แบบ (วิธีนี้ใช้งานได้สำเร็จ 39 รายการ จาก 40 รูปแบบ) นอกจากนี้ ตลอดระยะเวลา 8 วันของการทดลอง ตรวจพบเซสชัน OpenVPN 3638 เซสชันในทราฟฟิกทรานซิชัน ซึ่ง 3245 เซสชันได้รับการยืนยันแล้ว ขอบเขตสูงสุดของผลบวกปลอมในวิธีที่เสนอนี้ต่ำกว่าวิธีที่ใช้วิธีการเรียนรู้ของเครื่องที่เสนอไว้ก่อนหน้านี้ถึงสามเท่า

ประสิทธิภาพของวิธีการป้องกันการตรวจสอบการรับส่งข้อมูล OpenVPN ในบริการเชิงพาณิชย์ได้รับการประเมินแยกต่างหาก โดยทดสอบจากทั้งหมด 41 บริการ VPNจากบริการที่ใช้เทคนิคการปกปิดข้อมูลการรับส่ง OpenVPN พบว่าสามารถระบุข้อมูลได้ใน 34 กรณี บริการที่ไม่สามารถตรวจพบได้นั้นใช้เทคนิคการปกปิดข้อมูลการรับส่งเพิ่มเติม นอกเหนือจาก OpenVPN (เช่น การส่งข้อมูล OpenVPN ผ่านอุโมงค์เข้ารหัสเพิ่มเติม) บริการส่วนใหญ่ที่สามารถระบุได้สำเร็จนั้นใช้การบิดเบือนข้อมูลการรับส่งโดยใช้การดำเนินการ XOR การปกปิดข้อมูลการรับส่งเพิ่มเติมโดยไม่มีการสุ่มข้อมูลการรับส่งอย่างเหมาะสม หรือการมีบริการ OpenVPN ที่ไม่ได้ปกปิดข้อมูลการรับส่งอยู่บนเซิร์ฟเวอร์เดียวกัน เซิร์ฟเวอร์.

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

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

 การตรวจจับเซสชัน OpenVPN ในการรับส่งข้อมูล

วิธีที่ 3 คือการตรวจสอบแบบแอคทีฟ ซึ่งเกิดจากการที่ในการตอบสนองต่อคำขอรีเซ็ตการเชื่อมต่อ เซิร์ฟเวอร์ OpenVPN จะส่งแพ็กเก็ต RST เฉพาะ (การตรวจสอบจะไม่ทำงานเมื่อใช้โหมด "tls-auth" เนื่องจากเซิร์ฟเวอร์ OpenVPN จะละเว้นคำขอจากไคลเอนต์ที่ไม่ผ่านการตรวจสอบสิทธิ์ผ่าน TLS)

 การตรวจจับเซสชัน OpenVPN ในการรับส่งข้อมูล


ที่มา: opennet.ru

เพิ่มความคิดเห็น