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

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

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

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

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

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

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

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

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

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

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


ที่มา: opennet.ru

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