โหมดการทำงานของ IPsec เทคโนโลยีที่ใช้ใน IPSEC IPsec ประกอบด้วยสองโปรโตคอล

IPsec ไม่ใช่โปรโตคอลเดียว แต่เป็นระบบโปรโตคอลที่ออกแบบมาเพื่อปกป้องข้อมูลในระดับเครือข่ายของเครือข่าย IP บทความนี้จะอธิบายทฤษฎีการใช้ IPsec เพื่อสร้างอุโมงค์ VPN

การแนะนำ

VPN ที่ใช้เทคโนโลยี IPsec สามารถแบ่งออกเป็นสองส่วน:

  • โปรโตคอลการแลกเปลี่ยนคีย์อินเทอร์เน็ต (IKE)
  • โปรโตคอล IPsec (AH/ESP/ทั้งคู่)

ส่วนแรก (IKE) คือขั้นตอนการเจรจา ระหว่างที่จุด VPN ทั้งสองจุดเลือกวิธีการที่จะใช้เพื่อปกป้องการรับส่งข้อมูล IP ที่ส่งระหว่างกัน นอกจากนี้ IKE ยังใช้เพื่อจัดการการเชื่อมต่อโดยแนะนำแนวคิดของ Security Associations (SA) สำหรับการเชื่อมต่อแต่ละรายการ SA จะชี้ไปในทิศทางเดียวเท่านั้น ดังนั้นการเชื่อมต่อ IPsec ทั่วไปจึงใช้ SA สองรายการ

ส่วนที่สองคือข้อมูล IP ที่ต้องได้รับการเข้ารหัสและรับรองความถูกต้องก่อนที่จะส่งโดยใช้วิธีที่ตกลงไว้ในส่วนแรก (IKE) มีโปรโตคอล IPsec ที่แตกต่างกันที่สามารถใช้ได้: AH, ESP หรือทั้งสองอย่าง

ลำดับสำหรับการสร้าง VPN ผ่าน IPsec สามารถอธิบายโดยย่อได้ดังนี้:

  • IKE เจรจาการรักษาความปลอดภัยของเลเยอร์ IKE
  • IKE เจรจาการรักษาความปลอดภัยของเลเยอร์ IPsec
  • ข้อมูลที่ได้รับการป้องกันจะถูกส่งผ่าน VPN IPsec

IKE การแลกเปลี่ยนคีย์อินเทอร์เน็ต

ในการเข้ารหัสและรับรองความถูกต้องของข้อมูล คุณต้องเลือกวิธีการเข้ารหัส/การรับรองความถูกต้อง (อัลกอริทึม) และคีย์ที่ใช้ในนั้น งานของโปรโตคอล Internet Key Exchange IKE ในกรณีนี้คือการกระจายข้อมูล "คีย์เซสชัน" และการยอมรับอัลกอริทึมที่จะปกป้องข้อมูลระหว่างจุด VPN

ภารกิจหลักของ IKE:

  • การรับรองความถูกต้องของจุด VPN ซึ่งกันและกัน
  • การสร้างการเชื่อมต่อ IPsec ใหม่ (ผ่านการสร้างคู่ SA)
  • การจัดการการเชื่อมต่อปัจจุบัน

IKE ติดตามการเชื่อมต่อโดยมอบหมาย Security Associations, SA ให้กับแต่ละแห่ง SA อธิบายพารามิเตอร์ของการเชื่อมต่อเฉพาะ รวมถึงโปรโตคอล IPsec (AH/ESP หรือทั้งสองอย่าง) คีย์เซสชันที่ใช้สำหรับการเข้ารหัส/ถอดรหัส และ/หรือการตรวจสอบความถูกต้องของข้อมูล SA เป็นแบบทิศทางเดียว ดังนั้นจึงมีการใช้ SA หลายรายการต่อการเชื่อมต่อ ในกรณีส่วนใหญ่ เมื่อใช้เฉพาะ ESP หรือ AH จะมีการสร้าง SA เพียงสองรายการสำหรับแต่ละการเชื่อมต่อ หนึ่งรายการสำหรับการรับส่งข้อมูลขาเข้าและอีกรายการหนึ่งสำหรับการรับส่งข้อมูลขาออก เมื่อใช้ ESP และ AH ร่วมกัน SA ต้องใช้สี่รายการ

กระบวนการเจรจาของ IKE ต้องผ่านหลายขั้นตอน (ระยะ) ขั้นตอนเหล่านี้รวมถึง:

  1. ไอเค ระยะที่ 1:
    — การป้องกันของ IKE เอง (อุโมงค์ ISAKMP) ได้รับการเจรจา
  2. IKE ระยะที่สอง (IKE ระยะที่ 2):
    — มีการเจรจาการป้องกัน IPsec
    — รับข้อมูลจากระยะแรกเพื่อสร้างคีย์เซสชัน

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

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

ระยะที่ 1 IKE - การเจรจาด้านความปลอดภัยของ IKE (อุโมงค์ ISAKMP)
ในระยะแรกของการเจรจา คะแนน VPN จะตรวจสอบความถูกต้องซึ่งกันและกันโดยใช้คีย์ทั่วไป (คีย์ที่แชร์ล่วงหน้า) สำหรับการตรวจสอบสิทธิ์จะใช้อัลกอริธึมแฮช: MD5, SHA-1, SHA-2
อย่างไรก็ตาม ก่อนที่จะตรวจสอบสิทธิ์ซึ่งกันและกัน เพื่อไม่ให้ส่งข้อมูลเป็นข้อความที่ชัดเจน จุด VPN จะแลกเปลี่ยนรายการข้อเสนอ (ข้อเสนอ) ที่อธิบายไว้ก่อนหน้านี้ หลังจากเลือกข้อเสนอที่เหมาะสมกับจุด VPN ทั้งสองจุดแล้ว จุด VPN จะตรวจสอบสิทธิ์ซึ่งกันและกัน
การรับรองความถูกต้องสามารถทำได้หลายวิธี: ผ่านคีย์ที่แชร์ล่วงหน้า ใบรับรอง หรือ . รหัสที่ใช้ร่วมกันเป็นวิธีการตรวจสอบสิทธิ์ที่ใช้บ่อยที่สุด
การเจรจาระยะที่ 1 IKE สามารถเกิดขึ้นได้ในหนึ่งในสองโหมด: หลักและเชิงรุก โหมดหลักใช้เวลานานกว่า แต่ก็มีความปลอดภัยมากกว่าเช่นกัน ในกระบวนการนี้มีการแลกเปลี่ยนข้อความหกข้อความ โหมดก้าวร้าวเร็วขึ้น โดยจำกัดตัวเองไว้ที่สามข้อความ
งานหลักของระยะแรกของ IKE คือการแลกเปลี่ยนกุญแจ Diffie-Hellman ขึ้นอยู่กับการเข้ารหัสคีย์สาธารณะ แต่ละฝ่ายจะเข้ารหัสพารามิเตอร์การตรวจสอบสิทธิ์ (คีย์ที่แชร์ล่วงหน้า) ด้วยคีย์สาธารณะของเพื่อนบ้าน ซึ่งเมื่อได้รับข้อความนี้ จะถอดรหัสด้วยคีย์ส่วนตัวของเขา อีกวิธีหนึ่งในการตรวจสอบสิทธิ์ซึ่งกันและกันคือการใช้ใบรับรอง

ระยะที่ 2 IKE – การเจรจาด้านความปลอดภัยของ IPsec
ในระยะที่สอง วิธีการป้องกันการเชื่อมต่อ IPsec จะถูกเลือก
ระยะที่สองใช้วัสดุการคีย์ที่ดึงมาจากการแลกเปลี่ยนคีย์ Diffie-Hellman ที่เกิดขึ้นในระยะแรก ตามเนื้อหานี้ คีย์เซสชันจะถูกสร้างขึ้นซึ่งใช้เพื่อปกป้องข้อมูลในอุโมงค์ VPN

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

มีโหมดการทำงานเพียงโหมดเดียวสำหรับระยะที่สองของการเจรจา IKE ซึ่งเรียกว่าโหมดด่วน ในระหว่างกระบวนการเจรจาระยะที่สอง จะมีการแลกเปลี่ยนข้อความสามข้อความ

เมื่อสิ้นสุดระยะที่สอง การเชื่อมต่อ VPN จะถูกสร้างขึ้น

ตัวเลือกไอเค
ในระหว่างการสร้างการเชื่อมต่อ มีการใช้พารามิเตอร์หลายตัว โดยไม่มีการเจรจาซึ่งทำให้ไม่สามารถสร้างการเชื่อมต่อ VPN ได้

  • การระบุโหนดสิ้นสุด
    วิธีที่โหนดรับรองความถูกต้องซึ่งกันและกัน คีย์ที่ใช้บ่อยที่สุดคือคีย์ที่ใช้ร่วมกัน การรับรองความถูกต้องของคีย์ที่ใช้ร่วมกันใช้อัลกอริทึม Diffie-Hellman
  • เครือข่าย/โฮสต์ท้องถิ่นและระยะไกล
    กำหนดการรับส่งข้อมูลที่จะได้รับอนุญาตผ่านอุโมงค์ VPN
  • โหมดอุโมงค์หรือการขนส่ง
    IPsec สามารถทำงานในสองโหมด: อุโมงค์และการขนส่ง การเลือกโหมดขึ้นอยู่กับวัตถุที่ได้รับการป้องกัน
    โหมดอุโมงค์ใช้สำหรับป้องกันระหว่างวัตถุระยะไกลเช่น แพ็กเก็ต IP ได้รับการห่อหุ้มอย่างสมบูรณ์ในแพ็กเก็ตใหม่ และมีเพียงการเชื่อมต่อระหว่างจุด VPN สองจุดเท่านั้นที่ผู้สังเกตการณ์ภายนอกจะมองเห็นได้ ที่อยู่ IP ต้นทางและปลายทางที่แท้จริงจะมองเห็นได้หลังจากที่แพ็กเก็ตถูกแยกส่วนและรับที่จุดรับ VPN เท่านั้น ดังนั้นโหมดทันเนลจึงมักใช้สำหรับการเชื่อมต่อ VPN
    โหมดการขนส่งปกป้องข้อมูลของแพ็กเก็ต IP (TCP, UDP และโปรโตคอลชั้นบน) และส่วนหัวของแพ็กเก็ต IP ดั้งเดิมนั้นจะถูกเก็บรักษาไว้ ด้วยวิธีนี้ ผู้สังเกตการณ์จะเห็นต้นทางและปลายทางดั้งเดิม แต่จะไม่เห็นข้อมูลที่ถูกส่ง โหมดนี้มักใช้เมื่อป้องกันการเชื่อมต่อเครือข่ายท้องถิ่นระหว่างโฮสต์
  • เกตเวย์ระยะไกล
    VPN เป็นผู้รับการเชื่อมต่อที่ปลอดภัย ซึ่งจะถอดรหัส/ตรวจสอบข้อมูลจากอีกด้านหนึ่ง และส่งไปยังปลายทางสุดท้าย
  • โหมดการทำงานของไอเค
    การเจรจา IKE สามารถทำงานได้ในสองโหมด: ขั้นพื้นฐานและ ก้าวร้าว.
    ความแตกต่างระหว่างพวกเขาคือในโหมดก้าวร้าวจะใช้แพ็กเก็ตน้อยลงซึ่งช่วยให้สร้างการเชื่อมต่อได้เร็วขึ้น ในทางกลับกัน โหมดก้าวร้าวจะไม่ส่งพารามิเตอร์การเจรจาบางอย่าง เช่น กลุ่ม Diffie-Hellman และ PFS ซึ่งจำเป็นต้องมีการกำหนดค่าเบื้องต้นที่เหมือนกันบนจุดเชื่อมต่อที่เข้าร่วม
  • โปรโตคอล IPsec
    มีโปรโตคอล IPsec สองแบบ: Authentication Header (AH) และ Encapsulating Security Payload (ESP) ซึ่งทำหน้าที่เข้ารหัสและรับรองความถูกต้อง
    ESP อนุญาตให้มีการเข้ารหัส การรับรองความถูกต้องแยกกันหรือพร้อมกัน
    AH อนุญาตเฉพาะการตรวจสอบสิทธิ์เท่านั้น ความแตกต่างในการรับรองความถูกต้องของ ESP ก็คือ AH ยังตรวจสอบส่วนหัว IP ภายนอกด้วย ช่วยให้คุณสามารถยืนยันได้ว่าแพ็กเก็ตมาจากแหล่งที่ระบุจริง ๆ
  • การเข้ารหัสไอเค
    ระบุอัลกอริธึมการเข้ารหัส IKE ที่จะใช้และคีย์ รองรับอัลกอริธึมการเข้ารหัสแบบสมมาตรต่างๆ เช่น DES, 3DES, AES
  • การรับรองความถูกต้องของ IKE
    อัลกอริธึมการรับรองความถูกต้องที่ใช้ในการเจรจา IKE อาจเป็น: SHA, MD5
  • กลุ่ม IKE Diffie-Hellman (DH)
    กลุ่ม DF ที่ใช้สำหรับการแลกเปลี่ยนคีย์ใน IKE ยิ่งกลุ่มมีขนาดใหญ่เท่าใด ขนาดของคีย์การแลกเปลี่ยนก็จะยิ่งใหญ่ขึ้นเท่านั้น
  • อายุการใช้งานการเชื่อมต่อ IKE
    มันถูกระบุตามเวลา (วินาที) และตามขนาดของข้อมูลที่ถ่ายโอน (กิโลไบต์) ทันทีที่ตัวนับตัวใดตัวหนึ่งถึงค่าเกณฑ์ เฟสแรกใหม่จะเริ่มต้นขึ้น หากไม่มีการถ่ายโอนข้อมูลตั้งแต่สร้างการเชื่อมต่อ IKE จะไม่มีการสร้างการเชื่อมต่อใหม่จนกว่าฝ่ายใดฝ่ายหนึ่งต้องการสร้างการเชื่อมต่อ VPN
  • พีเอฟเอส
    เมื่อปิดใช้งาน PFS เนื้อหาการสร้างคีย์จะถูกเรียกคืนในระยะแรกของการเจรจา IKE ในเวลาที่มีการแลกเปลี่ยนคีย์ ในระยะที่สองของการเจรจา IKE คีย์เซสชันจะถูกสร้างขึ้นตามเนื้อหาที่ได้รับ เมื่อเปิดใช้งาน PFS เมื่อสร้างคีย์เซสชันใหม่ เนื้อหาใหม่จะถูกนำมาใช้ในแต่ละครั้ง ดังนั้นหากคีย์ถูกบุกรุก จะไม่สามารถสร้างคีย์ใหม่ตามคีย์นั้นได้
    PFS สามารถใช้ได้ในสองโหมด: PFS แรกบนคีย์จะเริ่มการแลกเปลี่ยนคีย์ใหม่ในระยะ IKE แรกในแต่ละครั้งที่การเจรจาเริ่มต้นขึ้น
    ระยะที่สอง PFS ตัวที่สองในโหมดข้อมูลประจำตัวจะลบ SA เฟสแรกออกทุกครั้งที่การเจรจาระยะที่สองผ่านไป เพื่อให้แน่ใจว่าจะไม่มีการเข้ารหัสการเจรจาระยะที่สองด้วยคีย์เดียวกันกับคีย์ก่อนหน้า
  • กลุ่ม IPsec DH
    ข้อมูลกลุ่ม DF คล้ายกับข้อมูลที่ใช้ใน IKE ใช้สำหรับ PFS เท่านั้น
  • การเข้ารหัสไอพีเซ็ก
    อัลกอริทึมที่ใช้ในการเข้ารหัสข้อมูล ใช้เมื่อใช้ ESP ในโหมดการเข้ารหัส ตัวอย่างอัลกอริทึม: DES, 3DES, AES
  • การรับรองความถูกต้องของ IPsec
    อัลกอริทึมที่ใช้ในการตรวจสอบข้อมูลที่ส่ง ใช้ในกรณีของ AH หรือ ESP ในโหมดการรับรองความถูกต้อง อัลกอริธึมตัวอย่าง: SHA, MD5
  • อายุการใช้งาน IPsec
    อายุการใช้งานของการเชื่อมต่อ VPN จะแสดงตามเวลา (วินาที) และตามขนาดของข้อมูลที่ถ่ายโอน (กิโลไบต์) ตัวนับแรกที่ถึงขีดจำกัดจะทริกเกอร์การสร้างคีย์เซสชันใหม่ หากไม่มีการถ่ายโอนข้อมูลตั้งแต่สร้างการเชื่อมต่อ IKE จะไม่มีการสร้างการเชื่อมต่อใหม่จนกว่าฝ่ายใดฝ่ายหนึ่งต้องการสร้างการเชื่อมต่อ VPN

วิธีการรับรองความถูกต้อง IKE

  • โหมดแมนนวล
    วิธีที่ง่ายที่สุดซึ่งไม่ได้ใช้ IKE และคีย์การรับรองความถูกต้องและการเข้ารหัสตลอดจนพารามิเตอร์อื่น ๆ ได้รับการตั้งค่าด้วยตนเองที่จุดทั้งสองของการเชื่อมต่อ VPN
  • ผ่านคีย์ที่ใช้ร่วมกัน (Pre-Shared Keys, PSK)
    คีย์แชร์ที่ป้อนไว้ล่วงหน้าบนจุดเชื่อมต่อ VPN ทั้งสองจุด ความแตกต่างจากวิธีก่อนหน้านี้คือใช้ IKE ซึ่งอนุญาตให้มีการตรวจสอบสิทธิ์ปลายทางและใช้คีย์เซสชันแบบหมุนเวียนแทนคีย์การเข้ารหัสแบบคงที่
  • ใบรับรอง
    แต่ละจุด VPN ใช้: รหัสส่วนตัวของตัวเอง, รหัสสาธารณะของตัวเอง, ใบรับรองของตัวเองรวมถึงรหัสสาธารณะของตัวเองและลงนามโดยผู้ออกใบรับรองที่เชื่อถือได้ ไม่เหมือนกับวิธีก่อนหน้านี้ วิธีนี้ช่วยให้คุณหลีกเลี่ยงการป้อนคีย์ทั่วไปเพียงคีย์เดียวในทุกจุดของการเชื่อมต่อ VPN โดยแทนที่ด้วยใบรับรองส่วนบุคคลที่ลงนามโดยหน่วยงานที่เชื่อถือได้

โปรโตคอล IPsec

โปรโตคอล IPsec ใช้เพื่อปกป้องข้อมูลที่ส่ง การเลือกโปรโตคอลและคีย์จะเกิดขึ้นในระหว่างการเจรจา IKE

AH (ส่วนหัวการรับรองความถูกต้อง)

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

ในโหมดการขนส่ง AH จะฝังส่วนหัวไว้หลังแพ็กเก็ต IP ดั้งเดิม
ในโหมดทันเนล AH จะฝังส่วนหัวไว้หลังส่วนหัว IP ภายนอก (ใหม่) และก่อนส่วนหัว IP ภายใน (ดั้งเดิม)

ESP (การห่อหุ้มเพย์โหลดความปลอดภัย)

โปรโตคอล ESP ใช้สำหรับการเข้ารหัส การรับรองความถูกต้อง หรือทั้งสองอย่างที่เกี่ยวข้องกับแพ็กเก็ต IP

ในโหมดการขนส่ง โปรโตคอล ESP จะแทรกส่วนหัวหลังส่วนหัว IP ดั้งเดิม
ในโหมดทันเนล ส่วนหัว ESP จะอยู่หลังส่วนหัว IP ภายนอก (ใหม่) และก่อนส่วนหัวภายใน (ดั้งเดิม)

ความแตกต่างหลักสองประการระหว่าง ESP และ AH:

  • นอกเหนือจากการรับรองความถูกต้องแล้ว ESP ยังมีความสามารถในการเข้ารหัส (AH ไม่ได้จัดเตรียมไว้)
  • ESP ในโหมดทันเนลจะตรวจสอบสิทธิ์ส่วนหัว IP ดั้งเดิมเท่านั้น (AH ยังตรวจสอบสิทธิ์ส่วนหัวภายนอกด้วย)

ทำงานเบื้องหลัง NAT (NAT Traversal)
มีการนำข้อกำหนดแยกต่างหากมาใช้เพื่อสนับสนุนการทำงานเบื้องหลัง NAT หากจุด VPN รองรับข้อกำหนดนี้ IPsec รองรับการทำงานเบื้องหลัง NAT แต่มีข้อกำหนดบางประการ
การสนับสนุน NAT ประกอบด้วยสองส่วน:

  • ในระดับ IKE อุปกรณ์ปลายทางจะแลกเปลี่ยนข้อมูลระหว่างกันเกี่ยวกับการสนับสนุน NAT Traversal และเวอร์ชันของข้อกำหนดที่รองรับ
  • ที่ระดับ ESP แพ็กเก็ตที่สร้างขึ้นจะถูกห่อหุ้มไว้ใน UDP

NAT Traversal จะใช้เฉพาะเมื่อปลายทางทั้งสองรองรับเท่านั้น
คำจำกัดความของ NAT: จุดสิ้นสุด VPN ทั้งสองส่งแฮชของที่อยู่ IP พร้อมกับพอร์ตต้นทาง UDP ของการเจรจา IKE ผู้รับใช้ข้อมูลนี้เพื่อพิจารณาว่าที่อยู่ IP ต้นทางและ/หรือพอร์ตมีการเปลี่ยนแปลงหรือไม่ หากไม่มีการเปลี่ยนแปลงพารามิเตอร์เหล่านี้ การรับส่งข้อมูลจะไม่ผ่าน NAT และไม่จำเป็นต้องใช้กลไก NAT Traversal หากที่อยู่หรือพอร์ตมีการเปลี่ยนแปลง แสดงว่ามี NAT ระหว่างอุปกรณ์

เมื่อจุดสิ้นสุดพิจารณาว่าจำเป็นต้องใช้ NAT Traversal การเจรจา IKE จะย้ายจากพอร์ต UDP 500 ไปยังพอร์ต 4500 ซึ่งเสร็จสิ้นเนื่องจากอุปกรณ์บางตัวจัดการเซสชัน IKE บนพอร์ต 500 ไม่ถูกต้องเมื่อใช้ NAT
ปัญหาอีกประการหนึ่งเกิดขึ้นจากข้อเท็จจริงที่ว่าโปรโตคอล ESP เป็นโปรโตคอลชั้นการขนส่งและอยู่ด้านบนสุดของ IP โดยตรง ด้วยเหตุนี้ แนวคิดของพอร์ต TCP/UDP จึงใช้ไม่ได้ ซึ่งทำให้ไม่สามารถเชื่อมต่อไคลเอนต์มากกว่าหนึ่งตัวเข้ากับเกตเวย์เดียวผ่าน NAT ได้ เพื่อแก้ไขปัญหานี้ ESP จะถูกบรรจุลงในดาตาแกรม UDP และส่งไปยังพอร์ต 4500 ซึ่งเป็นอันเดียวกับที่ IKE ใช้เมื่อเปิดใช้งาน NAT Traversal
NAT Traversal สร้างขึ้นในโปรโตคอลที่รองรับและทำงานได้โดยไม่ต้องกำหนดค่าล่วงหน้า

โปรโตคอล IPSec การจัดช่องทางที่ปลอดภัย https://www.site/lan/protokoly-ipsec https://www.site/@@site-logo/logo.png

โปรโตคอล IPSec

การจัดช่องทางที่ปลอดภัย

โปรโตคอล IPSec

การสร้างช่องทางที่ปลอดภัยโดยใช้ AH, ESP และ IKE

Internet Protocol Security (IPSec) เรียกว่าระบบในมาตรฐานอินเทอร์เน็ต แท้จริงแล้ว IPSec คือชุดมาตรฐานแบบเปิดที่สอดคล้องกัน ซึ่งปัจจุบันมีแกนหลักที่กำหนดไว้อย่างชัดเจน และในขณะเดียวกันก็สามารถขยายได้อย่างง่ายดายด้วยโปรโตคอล อัลกอริธึม และฟังก์ชันใหม่ๆ

วัตถุประสงค์หลักของโปรโตคอล IPSec คือเพื่อให้แน่ใจว่าการรับส่งข้อมูลอย่างปลอดภัยผ่านเครือข่าย IP การใช้ IPSec รับประกัน:

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

(โปรดทราบว่าตามคำจำกัดความคลาสสิก แนวคิดเรื่องความปลอดภัยของข้อมูลมีข้อกำหนดอีกหนึ่งประการ - ความพร้อมใช้งานของข้อมูล ซึ่งในบริบทที่พิจารณาว่าสามารถตีความได้ว่าเป็นการรับประกันการส่งมอบ โปรโตคอล IPSec ไม่สามารถแก้ปัญหานี้ได้ ไปยังโปรโตคอล TCP Transport Layer)

ช่องที่ปลอดภัยในระดับที่แตกต่างกัน

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

ช่องทางที่ปลอดภัยสามารถสร้างขึ้นโดยใช้เครื่องมือระบบที่ใช้งานในเลเยอร์ต่างๆ ของโมเดล OSI (ดูรูปที่ 1) หากใช้โปรโตคอลของระดับบนสุดอย่างใดอย่างหนึ่ง (แอปพลิเคชัน การนำเสนอ หรือเซสชัน) เพื่อปกป้องข้อมูล วิธีการป้องกันนี้จะไม่ขึ้นอยู่กับเครือข่าย (IP หรือ IPX, อีเธอร์เน็ต หรือ ATM) ที่ใช้ในการขนส่งข้อมูล ซึ่งสามารถ ถือเป็นข้อได้เปรียบอย่างไม่ต้องสงสัย ในทางกลับกัน แอปพลิเคชันจะขึ้นอยู่กับโปรโตคอลความปลอดภัยเฉพาะ เช่น สำหรับแอปพลิเคชัน โปรโตคอลดังกล่าวจะไม่โปร่งใส

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

โปรโตคอลช่องทางที่ปลอดภัยที่รู้จักกันดีที่สุดที่ทำงานในระดับการนำเสนอถัดไปคือโปรโตคอล Secure Socket Layer (SSL) และการใช้งานแบบเปิดใหม่ Transport Layer Security (TLS) การลดระดับโปรโตคอลทำให้เป็นเครื่องมือรักษาความปลอดภัยที่หลากหลายมากขึ้น ขณะนี้แอปพลิเคชันและโปรโตคอลระดับแอปพลิเคชันใดๆ สามารถใช้โปรโตคอลความปลอดภัยเดียวได้ อย่างไรก็ตาม แอปพลิเคชันยังคงจำเป็นต้องเขียนใหม่เพื่อรวมการเรียกที่ชัดเจนไปยังฟังก์ชันโปรโตคอลช่องสัญญาณที่ปลอดภัย

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

ตัวอย่างเช่น พิจารณา Point-to-Point Tunneling Protocol (PPTP) ซึ่งทำงานที่ดาต้าลิงค์เลเยอร์ ขึ้นอยู่กับโปรโตคอล PPP ซึ่งใช้กันอย่างแพร่หลายในการเชื่อมต่อแบบจุดต่อจุด เช่น สายเช่า โปรโตคอล PPTP ไม่เพียงแต่ให้ความโปร่งใสด้านความปลอดภัยสำหรับแอปพลิเคชันและบริการระดับแอปพลิเคชันเท่านั้น แต่ยังเป็นอิสระจากโปรโตคอลเลเยอร์เครือข่ายที่ใช้ โดยเฉพาะอย่างยิ่ง โปรโตคอล PPTP สามารถขนส่งแพ็กเก็ตทั้งในเครือข่าย IP และในเครือข่ายที่ใช้โปรโตคอล IPX, DECnet หรือเน็ต BEUI อย่างไรก็ตาม เนื่องจากโปรโตคอล PPP ไม่ได้ใช้ในทุกเครือข่าย (ในเครือข่ายท้องถิ่นส่วนใหญ่ โปรโตคอล Ethernet ทำงานที่ระดับดาต้าลิงค์ และในเครือข่ายทั่วโลก - โปรโตคอล ATM และเฟรมรีเลย์) PPTP จึงไม่ถือเป็นเครื่องมือสากล

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

การกระจายฟังก์ชันระหว่างโปรโตคอล IPSEC

แกนหลักของ IPSec ประกอบด้วยสามโปรโตคอล: โปรโตคอลการตรวจสอบความถูกต้อง (Authenti-cation Header, AH), โปรโตคอลการเข้ารหัส (Encapsulation Security Payload, ESP) และโปรโตคอลการแลกเปลี่ยนคีย์ (Internet Key Exchange, IKE) ฟังก์ชั่นการรักษาช่องทางที่ปลอดภัยนั้นมีการกระจายไปตามโปรโตคอลเหล่านี้ดังนี้:

  • โปรโตคอล AH รับประกันความสมบูรณ์และความถูกต้องของข้อมูล
  • โปรโตคอล ESP เข้ารหัสข้อมูลที่ส่ง รับประกันการรักษาความลับ แต่ยังสามารถรองรับการรับรองความถูกต้องและความสมบูรณ์ของข้อมูลได้อีกด้วย
  • โปรโตคอล IKE แก้ปัญหางานเสริมในการจัดหาคีย์ลับที่จำเป็นสำหรับการดำเนินการตรวจสอบความถูกต้องและโปรโตคอลการเข้ารหัสข้อมูลให้กับจุดสิ้นสุดของช่องสัญญาณโดยอัตโนมัติ

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

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

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

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

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

สมาคมปลอดภัย

เพื่อให้โปรโตคอล AH และ ESP ทำหน้าที่ปกป้องข้อมูลที่ส่ง โปรโตคอล IKE จะสร้างการเชื่อมต่อแบบลอจิคัลระหว่างจุดปลายทั้งสอง ซึ่งในมาตรฐาน IPSec เรียกว่า “Security Association” (SA) การสร้าง SA เริ่มต้นด้วยการตรวจสอบความถูกต้องร่วมกันของทั้งสองฝ่าย เนื่องจากมาตรการรักษาความปลอดภัยทั้งหมดจะไม่มีความหมายหากข้อมูลถูกส่งหรือรับโดยบุคคลที่ไม่ถูกต้องหรือจากบุคคลที่ไม่ถูกต้อง พารามิเตอร์ SA ที่คุณเลือกถัดไปจะกำหนดว่าโปรโตคอลใดจากทั้งสองโปรโตคอล AH หรือ ESP ที่จะใช้ในการปกป้องข้อมูล ฟังก์ชั่นที่โปรโตคอลความปลอดภัยดำเนินการ: ตัวอย่างเช่น เฉพาะการตรวจสอบสิทธิ์และการตรวจสอบความสมบูรณ์เท่านั้น หรือนอกเหนือจากนั้น การป้องกันการเล่นซ้ำที่ผิดพลาด พารามิเตอร์ที่สำคัญมากของการเชื่อมโยงที่ปลอดภัยคือสิ่งที่เรียกว่าสื่อการเข้ารหัส เช่น คีย์ลับที่ใช้ในการทำงานของโปรโตคอล AH และ ESP

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

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

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

เพื่อให้มั่นใจถึงความเข้ากันได้ IPsec เวอร์ชันมาตรฐานจะกำหนดชุด "เครื่องมือ" ที่จำเป็น: โดยเฉพาะอย่างยิ่ง หนึ่งในฟังก์ชันการเข้ารหัสแบบทางเดียว MD5 หรือ SHA-1 สามารถใช้สำหรับการตรวจสอบข้อมูลได้ตลอดเวลา และอัลกอริธึมการเข้ารหัสจะรวม DES ไว้ด้วยอย่างแน่นอน ในเวลาเดียวกัน ผู้ผลิตผลิตภัณฑ์ที่มี IPSec มีอิสระที่จะขยายโปรโตคอลด้วยอัลกอริธึมการรับรองความถูกต้องและการเข้ารหัสอื่นๆ ที่พวกเขาทำได้สำเร็จ ตัวอย่างเช่น การใช้งาน IPSec จำนวนมากรองรับอัลกอริธึมการเข้ารหัส Triple DES ยอดนิยม รวมถึงอัลกอริธึมที่ค่อนข้างใหม่ - Blowfish, Cast, CDMF, Idea, RC5

มาตรฐาน IPSec อนุญาตให้เกตเวย์ใช้ SA เดียวเพื่อรับส่งข้อมูลจากโฮสต์ทั้งหมดที่สื่อสารผ่านอินเทอร์เน็ต หรือสร้าง SA ตามจำนวนที่กำหนดเองเพื่อจุดประสงค์นี้ เช่น หนึ่งรายการสำหรับการเชื่อมต่อ TCP แต่ละรายการ SA ที่ปลอดภัยคือการเชื่อมต่อแบบลอจิคัลทิศทางเดียว (ซิมเพล็กซ์) ใน IPSec ดังนั้นจึงต้องสร้าง SA สองแห่งสำหรับการสื่อสารแบบสองทิศทาง

โหมดการขนส่งและอุโมงค์

โปรโตคอล AH และ ESP สามารถปกป้องข้อมูลได้สองโหมด: การขนส่งและอุโมงค์ ในโหมดการขนส่ง การส่งแพ็กเก็ต IP ผ่านเครือข่ายจะดำเนินการโดยใช้ส่วนหัวดั้งเดิมของแพ็กเก็ตนี้ และในโหมดทันเนล แพ็กเก็ตดั้งเดิมจะถูกวางในแพ็กเก็ต IP ใหม่ และการส่งข้อมูลผ่านเครือข่ายจะดำเนินการตาม ส่วนหัวของแพ็กเก็ต IP ใหม่ การใช้โหมดใดโหมดหนึ่งขึ้นอยู่กับข้อกำหนดสำหรับการปกป้องข้อมูล รวมถึงบทบาทในเครือข่ายโดยโหนดที่ยุติช่องทางที่ปลอดภัย ดังนั้นโหนดสามารถเป็นโฮสต์ (โหนดสิ้นสุด) หรือเกตเวย์ (โหนดระดับกลาง) ดังนั้นจึงมีสามรูปแบบสำหรับการใช้ IPSec: โฮสต์ถึงโฮสต์ เกตเวย์ถึงเกตเวย์ และโฮสต์ถึงเกตเวย์

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

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

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

นาตาเลีย โอลิเวอร์

การดำเนินการกับเอกสาร

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

IPsec จากภายใน

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

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

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

ด้วยเหตุนี้ IPsec จึงประกอบด้วยสแต็กของโปรโตคอลที่มีหน้าที่รับผิดชอบในการรับรองการจัดตั้ง การดำเนินการ และการจัดการการเชื่อมต่อที่ปลอดภัย กระบวนการสร้างการเชื่อมต่อทั้งหมดประกอบด้วยสองขั้นตอน: ระยะแรกจะใช้เพื่อให้แน่ใจว่ามีการแลกเปลี่ยนข้อความ ISAKMP อย่างปลอดภัยในระยะที่สอง ISAKMP (Internet Security Association และ Key Management Protocol) เป็นโปรโตคอลที่ทำหน้าที่เจรจาและอัปเดตนโยบายความปลอดภัย (SA) ระหว่างผู้เข้าร่วมในการเชื่อมต่อ VPN นโยบายเหล่านี้ระบุโดยเฉพาะว่าจะใช้โปรโตคอลใดในการเข้ารหัส (AES หรือ 3DES) และสิ่งที่ต้องใช้ตรวจสอบสิทธิ์ (SHA หรือ MD5)

สองขั้นตอนหลักของ IPsec

ดังนั้นเราจึงพบว่าผู้เข้าร่วมต้องตกลงกันก่อนว่าจะใช้กลไกใดเพื่อสร้างการเชื่อมต่อที่ปลอดภัย ดังนั้น โปรโตคอล IKE จึงเข้ามามีบทบาทในตอนนี้ IKE (Internet Key Exchange) ใช้เพื่อสร้าง IPsec SA (Security Association ซึ่งเป็นนโยบายความปลอดภัยเดียวกัน) หรืออีกนัยหนึ่ง เพื่อประสานงานการทำงานของผู้เข้าร่วมในการเชื่อมต่อที่ปลอดภัย ผ่านโปรโตคอลนี้ ผู้เข้าร่วมตกลงว่าจะใช้อัลกอริธึมการเข้ารหัสใด อัลกอริธึมใดที่จะใช้เพื่อตรวจสอบความสมบูรณ์ และจะตรวจสอบสิทธิ์ซึ่งกันและกันได้อย่างไร ควรสังเกตว่าวันนี้มีโปรโตคอลสองเวอร์ชัน: IKEv1 และ IKEv2 เราจะสนใจเฉพาะ IKEv1 เท่านั้น: แม้ว่า IETF (The Internet Engineering Task Force) จะเปิดตัวครั้งแรกในปี 1998 แต่ก็ยังมีการใช้งานบ่อยมาก โดยเฉพาะอย่างยิ่งสำหรับ RA VPN (ดูรูปที่ 1)

สำหรับ IKEv2 นั้น มีการร่างฉบับแรกในปี 2548 โดยมีการอธิบายไว้อย่างสมบูรณ์ใน RFC 5996 (2010) และเฉพาะเมื่อปลายปีที่แล้วเท่านั้นที่ได้รับการประกาศให้เป็นมาตรฐานอินเทอร์เน็ต (RFC 7296) คุณสามารถอ่านเพิ่มเติมเกี่ยวกับความแตกต่างระหว่าง IKEv1 และ IKEv2 ได้ในแถบด้านข้าง หลังจากจัดการกับ IKE แล้ว เราก็กลับไปสู่ขั้นตอน IPsec ในช่วงแรก ผู้เข้าร่วมจะตรวจสอบความถูกต้องของกันและกันและตกลงกับพารามิเตอร์สำหรับการสร้างการเชื่อมต่อพิเศษที่มีจุดประสงค์เพื่อการแลกเปลี่ยนข้อมูลเกี่ยวกับอัลกอริธึมการเข้ารหัสที่ต้องการและรายละเอียดอื่นๆ ของอุโมงค์ IPsec ในอนาคต พารามิเตอร์ของช่องสัญญาณแรกนี้ (หรือที่เรียกว่าช่องสัญญาณ ISAKMP) ถูกกำหนดโดยนโยบาย ISAKMP ขั้นตอนแรกคือการตกลงเรื่องแฮชและอัลกอริธึมการเข้ารหัส จากนั้นจึงแลกเปลี่ยนคีย์ Diffie-Hellman (DH) จากนั้นจึงค้นหาว่าใครเป็นใคร นั่นคือขั้นตอนสุดท้ายคือกระบวนการตรวจสอบสิทธิ์โดยใช้คีย์ PSK หรือ RSA และหากทั้งสองฝ่ายตกลงกันได้ ก็จะมีการจัดตั้งอุโมงค์ ISAKMP ซึ่งขั้นตอนที่สองของ IKE ได้ผ่านไปแล้ว

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

วิธีการประมวลผลข้อมูล

ต่อไปนี้เป็นคำสองสามคำเกี่ยวกับชุดการแปลงร่าง ท้ายที่สุดคุณต้องเข้ารหัสข้อมูลที่ผ่านอุโมงค์ ดังนั้นในการกำหนดค่าทั่วไป Transformer-set คือชุดของพารามิเตอร์ที่ระบุอย่างชัดเจนว่าควรประมวลผลแพ็กเก็ตอย่างไร ดังนั้นจึงมีสองตัวเลือกสำหรับการประมวลผลข้อมูลดังกล่าว - โปรโตคอล ESP และ AH ESP (Encapsulating Security Payload) เกี่ยวข้องกับการเข้ารหัสข้อมูลโดยตรง และยังสามารถให้การตรวจสอบความถูกต้องของข้อมูลได้อีกด้วย ในทางกลับกัน AH (Authentication Header) มีหน้าที่รับผิดชอบในการตรวจสอบแหล่งที่มาและตรวจสอบความสมบูรณ์ของข้อมูลเท่านั้น

ตัวอย่างเช่น คำสั่ง crypto ipsec Transformer-set SET10 esp-aes จะบอกเราเตอร์ว่าชุดการแปลงชื่อ SET10 ควรทำงานโดยใช้โปรโตคอล ESP และการเข้ารหัส AES เท่านั้น เมื่อมองไปข้างหน้า ฉันจะบอกว่าต่อไปนี้เราจะใช้เราเตอร์และไฟร์วอลล์ของ Cisco เป็นเป้าหมาย จริงๆ แล้ว ทุกอย่างมีความชัดเจนไม่มากก็น้อยสำหรับ ESP หน้าที่ของมันคือการเข้ารหัสและด้วยเหตุนี้จึงทำให้มั่นใจได้ถึงการรักษาความลับ แต่เหตุใดจึงจำเป็นต้องมี AH? AH ให้การรับรองความถูกต้องของข้อมูล นั่นคือเป็นการยืนยันว่าข้อมูลนี้มาจากผู้ที่เราสร้างการเชื่อมต่อด้วยอย่างแน่นอน และไม่มีการเปลี่ยนแปลงระหว่างทาง มันมีสิ่งที่บางครั้งเรียกว่าการป้องกันการเล่นซ้ำ ในเครือข่ายสมัยใหม่ AH ​​ไม่ได้ใช้จริง มีเพียง ESP เท่านั้นที่สามารถพบได้ทุกที่

พารามิเตอร์ (หรือที่เรียกว่า SA) ที่เลือกไว้เพื่อเข้ารหัสข้อมูลในอุโมงค์ IPsec จะมีอายุการใช้งาน ซึ่งหลังจากนั้นจะต้องเปลี่ยนใหม่ การตั้งค่า IPsec SA อายุการใช้งานเริ่มต้นคือ 86,400 วินาทีหรือ 24 ชั่วโมง
เป็นผลให้ผู้เข้าร่วมได้รับอุโมงค์ที่เข้ารหัสพร้อมพารามิเตอร์ที่เหมาะสมกับพวกเขาทั้งหมด และส่งสตรีมข้อมูลไปเข้ารหัสที่นั่น คีย์การเข้ารหัสสำหรับอุโมงค์หลักจะได้รับการอัปเดตเป็นระยะๆ ตามอายุการใช้งาน โดยผู้เข้าร่วมจะสื่อสารอีกครั้งผ่านอุโมงค์ ISAKMP ผ่านขั้นตอนที่สอง และสร้าง SA อีกครั้ง

โหมด IKEv1

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

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


สองขั้นตอนไม่เพียงพอ

ดูเหมือนว่านี่ไม่ใช่รูปแบบการทำงานที่เรียบง่าย แต่ในความเป็นจริงมันยังซับซ้อนกว่าเล็กน้อย เมื่อเวลาผ่านไป เห็นได้ชัดว่า PSK เพียงอย่างเดียวไม่เพียงพอที่จะรับประกันความปลอดภัย ตัวอย่างเช่น หากเวิร์กสเตชันของพนักงานถูกบุกรุก ผู้โจมตีจะสามารถเข้าถึงเครือข่ายภายในทั้งหมดขององค์กรได้ทันที ดังนั้นเฟส 1.5 จึงได้รับการพัฒนาระหว่างเฟสคลาสสิกที่หนึ่งและสอง อย่างไรก็ตาม ขั้นตอนนี้มักจะไม่ได้ใช้ในการเชื่อมต่อ VPN แบบไซต์ต่อไซต์มาตรฐาน แต่ใช้เมื่อจัดการการเชื่อมต่อ VPN ระยะไกล (กรณีของเรา) ระยะนี้ประกอบด้วยส่วนขยายใหม่สองรายการ - Extended Authentication (XAUTH) และ Mode-Configuration (MODECFG)

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

IKEv2 กับ IKEv1

โปรโตคอลทั้งสองทำงานบนพอร์ต UDP หมายเลข 500 แต่เข้ากันไม่ได้ สถานการณ์ที่มี IKEv1 ที่ปลายด้านหนึ่งของทันเนลและ IKEv2 ที่อีกด้านหนึ่งไม่ได้รับอนุญาต ความแตกต่างที่สำคัญระหว่างเวอร์ชันที่สองและเวอร์ชันแรกมีดังนี้

  • ใน IKEv2 ไม่มีแนวคิดเช่นโหมดก้าวร้าวหรือโหมดหลักอีกต่อไป
  • ใน IKEv2 คำว่าระยะแรกจะถูกแทนที่ด้วย IKE_SA_INIT (การแลกเปลี่ยนข้อความสองข้อความที่รับรองการเจรจาโปรโตคอลการเข้ารหัส/แฮชและการสร้างคีย์ DH) และระยะที่สองจะถูกแทนที่ด้วย IKE_AUTH (รวมถึงสองข้อความที่ใช้การรับรองความถูกต้องด้วยตัวมันเอง ).
  • การกำหนดค่าโหมด (สิ่งที่เรียกว่าเฟส 1.5 ใน IKEv1) ได้รับการอธิบายโดยตรงในข้อกำหนดเฉพาะของโปรโตคอลและเป็นส่วนสำคัญของการกำหนดค่านี้
  • IKEv2 เพิ่มกลไกเพิ่มเติมเพื่อป้องกันการโจมตี DoS สิ่งสำคัญคือก่อนที่จะตอบสนองต่อแต่ละคำขอในการสร้างการเชื่อมต่อที่ปลอดภัย (IKE_SA_INIT) IKEv2 เกตเวย์ VPN จะส่งคุกกี้บางตัวไปยังแหล่งที่มาของคำขอดังกล่าวและรอการตอบกลับ หากแหล่งที่มาตอบสนอง - ทุกอย่างเป็นไปตามลำดับ คุณสามารถเริ่มสร้าง DH ได้ หากแหล่งที่มาไม่ตอบสนอง (นี่คือสิ่งที่เกิดขึ้นในกรณีของการโจมตี DoS เทคนิคนี้ชวนให้นึกถึง TCP SYN ฟลัด) แสดงว่าเกตเวย์ VPN ก็ลืมมันไป หากไม่มีกลไกนี้ ทุกคำขอจากใครก็ตาม เกตเวย์ VPN จะพยายามสร้างคีย์ DH (ซึ่งเป็นกระบวนการที่ค่อนข้างใช้ทรัพยากรมาก) และจะประสบปัญหาในไม่ช้า ด้วยเหตุนี้ เนื่องจากการดำเนินการทั้งหมดในขณะนี้ต้องการการยืนยันจากอีกด้านหนึ่งของการเชื่อมต่อ จึงเป็นไปไม่ได้ที่จะสร้างเซสชันที่เปิดเพียงครึ่งเดียวจำนวนมากบนอุปกรณ์ที่ถูกโจมตี

เรากำลังบรรลุเป้าหมายสำคัญ

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


ขั้นตอนแรกคือการพิจารณาว่าเกตเวย์ IPsec VPN มีอยู่หรือไม่ ซึ่งสามารถทำได้โดยการสแกนพอร์ต แต่มีคุณสมบัติเล็กๆ ที่นี่ ISAKMP ใช้โปรโตคอล UDP พอร์ต 500 ในขณะที่การสแกนเริ่มต้นด้วย Nmap จะมีผลกับพอร์ต TCP เท่านั้น และด้วยเหตุนี้จะมีข้อความ: พอร์ตที่สแกนทั้งหมด 1,000 พอร์ตบน 37.59.0.253 ถูกกรองแล้ว

ดูเหมือนว่าพอร์ตทั้งหมดจะถูกกรองและไม่มีพอร์ตที่เปิดอยู่ แต่หลังจากดำเนินการตามคำสั่งแล้ว

Nmap -sU --top-ports=20 37.59.0.253 เริ่มต้น Nmap 6.47 (http://nmap.org) เวลา 21-03-2558 12:29 GMT รายงานการสแกน Nmap สำหรับ 37.59.0.253 โฮสต์หมด (เวลาแฝง 0.066 วินาที) . บริการของรัฐพอร์ต 500/udp เปิด isakmp

เราตรวจสอบให้แน่ใจว่าไม่เป็นเช่นนั้นและนี่คืออุปกรณ์ VPN จริงๆ

เรามาโจมตีระยะแรกกันดีกว่า

ตอนนี้เราจะสนใจในระยะแรก โหมดเชิงรุก และการตรวจสอบสิทธิ์โดยใช้คีย์ที่แชร์ล่วงหน้า (PSK) ในสถานการณ์สมมตินี้ ตามที่เราจำได้ อุปกรณ์ VPN หรือการตอบกลับจะส่ง PSK ที่แฮชไปยังผู้ริเริ่ม หนึ่งในยูทิลิตี้ที่มีชื่อเสียงที่สุดสำหรับการทดสอบโปรโตคอล IKE คือ ike-scan ซึ่งรวมอยู่ในการกระจาย Kali Linux Ike-scan ช่วยให้คุณสามารถส่งข้อความ IKE ด้วยพารามิเตอร์ต่างๆ และถอดรหัสและแยกวิเคราะห์แพ็กเก็ตตอบกลับตามลำดับ ลองตรวจสอบอุปกรณ์เป้าหมาย:

Root@kali:~# ike-scan -M -A 37.59.0.253 0 ส่งคืนการจับมือกัน 0 แจ้งกลับมาแล้ว

สวิตช์ -A ระบุว่าควรใช้โหมดก้าวร้าว และ -M บ่งชี้ว่าควรแสดงผลลัพธ์ทีละบรรทัด (หลายบรรทัด) เพื่อการอ่านที่สะดวกยิ่งขึ้น เป็นที่ชัดเจนว่าไม่ได้รับผลลัพธ์ เหตุผลก็คือคุณต้องระบุตัวระบุเดียวกัน ซึ่งเป็นชื่อของกลุ่ม VPN แน่นอนว่ายูทิลิตี้ ike-scan อนุญาตให้คุณตั้งค่าตัวระบุนี้เป็นหนึ่งในพารามิเตอร์ แต่เนื่องจากเรายังไม่รู้จักเรา ลองหาค่าที่กำหนดเอง เช่น 0000 กัน

Root@kali:~# ike-scan -M -A --id=0000 37.59.0.253 37.59.0.253 การจับมือโหมด Aggressive กลับมาแล้ว

ครั้งนี้เราเห็นว่าได้รับคำตอบแล้ว (ดูรูปที่ 5) และเราได้รับข้อมูลที่เป็นประโยชน์มากมาย ส่วนสำคัญของข้อมูลที่ได้รับคือชุดการแปลง ในกรณีของเรา ระบุว่า “Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK”

พารามิเตอร์ทั้งหมดนี้สามารถระบุได้สำหรับยูทิลิตี ike-scan โดยใช้สวิตช์ --trans ตัวอย่างเช่น --trans=5,2,1,2 จะระบุว่าอัลกอริธึมการเข้ารหัสคือ 3DES, การแฮช HMAC-SHA, วิธีการตรวจสอบความถูกต้อง PSK และกลุ่ม DH ประเภทที่สอง (MODP 1024 บิต) คุณสามารถดูตารางการติดต่อค่าได้ตามที่อยู่นี้ มาเพิ่มคีย์อื่น (-P) เพื่อแสดงเพย์โหลดของแพ็คเกจโดยตรงหรือแทนแฮช PSK

Root@kali:~# ike-scan -M -A --id=0000 37.59.0.253 -P

เอาชนะความยากลำบากครั้งแรก

ดูเหมือนว่าจะได้รับแฮชแล้วและคุณสามารถลองเดรัจฉานมันได้ แต่ทุกอย่างไม่ง่ายนัก กาลครั้งหนึ่งในปี 2548 ฮาร์ดแวร์ของ Cisco บางตัวมีช่องโหว่ อุปกรณ์เหล่านี้ให้แฮชก็ต่อเมื่อผู้โจมตีส่งค่า ID ที่ถูกต้องเท่านั้น แน่นอนว่าตอนนี้แทบจะเป็นไปไม่ได้เลยที่จะค้นหาอุปกรณ์ดังกล่าวและค่าแฮชจะถูกส่งไปเสมอ ไม่ว่าผู้โจมตีจะส่งค่า ID ที่ถูกต้องหรือไม่ก็ตาม แน่นอนว่าการใช้กำลังดุร้ายนั้นไม่มีจุดหมาย ดังนั้นงานแรกคือการกำหนดค่า ID ที่ถูกต้องเพื่อให้ได้แฮชที่ถูกต้อง และช่องโหว่ที่เพิ่งค้นพบจะช่วยเราในเรื่องนี้ ประเด็นก็คือมีความแตกต่างเล็กน้อยระหว่างการตอบกลับระหว่างการแลกเปลี่ยนข้อความครั้งแรก กล่าวโดยสรุป หากใช้ชื่อกลุ่มที่ถูกต้อง จะมีความพยายามสี่ครั้งในการสร้างการเชื่อมต่อ VPN ต่อไป บวกกับแพ็กเก็ตเฟสสองที่เข้ารหัสสองชุด ในขณะที่ในกรณีของ ID ไม่ถูกต้อง มีเพียงสองแพ็คเก็ตเท่านั้นที่มาถึงเพื่อตอบสนอง อย่างที่คุณเห็น ความแตกต่างนั้นค่อนข้างสำคัญ ดังนั้น SpiderLabs (ผู้เขียนเครื่องมือ Responder ที่น่าสนใจพอๆ กัน) จึงได้พัฒนา PoC ก่อน จากนั้นจึงใช้ยูทิลิตี้ IKEForce เพื่อใช้ประโยชน์จากช่องโหว่นี้

จุดแข็งของ IKE คืออะไร

คุณสามารถติดตั้ง IKEForce ในไดเร็กทอรีใดก็ได้โดยการรันคำสั่ง

Git โคลน https://github.com/SpiderLabs/ikeforce

มันทำงานในสองโหมดหลัก - โหมดการคำนวณ -e (การแจงนับ) และโหมดกำลังเดรัจฉาน -b (เดรัจฉานแรง) เราจะไปที่ปัจจัยที่สองเมื่อเราดูการโจมตีปัจจัยที่สอง แต่ตอนนี้เราจะจัดการกับปัจจัยแรกแล้ว ก่อนที่คุณจะเริ่มกระบวนการกำหนด ID จริง คุณต้องตั้งค่าที่แน่นอนของชุดการแปลง เราได้กำหนดไว้แล้วก่อนหน้านี้ ดังนั้นเราจะระบุด้วยตัวเลือก -t 5 2 1 2 ดังนั้นกระบวนการค้นหา ID จะมีลักษณะดังนี้:

Python ikeforce.py 37.59.0.253 -e -w รายการคำศัพท์/group.txt -t 5 2 1 2

เป็นผลให้สามารถรับค่า ID ที่ถูกต้องได้อย่างรวดเร็ว (รูปที่ 7) ก้าวแรกผ่านไปแล้ว เดินหน้าต่อไปได้

เราได้รับ PSK

ตอนนี้คุณต้องบันทึกแฮช PSK ลงในไฟล์โดยใช้ชื่อกลุ่มที่ถูกต้อง ซึ่งสามารถทำได้โดยใช้ ike-scan:

Ike-สแกน -M -A --id=vpn 37.59.0.253 -Pkey.psk

และตอนนี้เมื่อพบค่า ID ที่ถูกต้องและได้รับแฮช PSK ที่ถูกต้องแล้ว ในที่สุดเราก็สามารถเริ่ม bruteforce แบบออฟไลน์ได้ในที่สุด มีตัวเลือกมากมายสำหรับการใช้กำลังเดรัจฉาน - นี่คือยูทิลิตี้ psk-crack แบบคลาสสิกและ John the Ripper (พร้อมแพตช์จัมโบ้) และแม้แต่ oclHashcat ซึ่งดังที่ทราบกันดีว่าช่วยให้คุณใช้พลังของ จีพียู เพื่อความง่าย เราจะใช้ psk-crack ซึ่งรองรับทั้งการโจมตีแบบ bruteforce และพจนานุกรม:

Psk-crack -d /usr/share/ike-scan/psk-crack-dictionary key.psk

แต่แม้กระทั่งการกู้คืน PSK ได้สำเร็จ (ดูรูปที่ 8) ก็มีชัยไปกว่าครึ่งเท่านั้น ในขั้นตอนนี้ เราต้องจำไว้ว่าสิ่งที่รอเราอยู่ต่อไปคือ XAUTH และปัจจัยที่สองของ IPsec VPN

การจัดการกับปัจจัย IPsec ที่สอง

ฉันขอเตือนคุณว่า XAUTH เป็นการรักษาความปลอดภัยเพิ่มเติม เป็นปัจจัยการตรวจสอบสิทธิ์ที่สอง และอยู่ในระยะ 1.5 XAUTH อาจมีหลายตัวเลือก - ซึ่งรวมถึงการตรวจสอบโดยใช้โปรโตคอล RADIUS รหัสผ่านแบบครั้งเดียว (OTP) และฐานผู้ใช้ในเครื่องปกติ เราจะมุ่งเน้นไปที่สถานการณ์มาตรฐานเมื่อมีการใช้ฐานผู้ใช้ในพื้นที่เพื่อตรวจสอบปัจจัยที่สอง จนกระทั่งเมื่อไม่นานมานี้ ยังไม่มีเครื่องมือสำหรับ XAUTH แบบ Brute Force ที่เปิดเผยต่อสาธารณะ แต่ด้วยการถือกำเนิดของ IKEForce ปัญหานี้ได้รับวิธีแก้ปัญหาที่คุ้มค่า การเปิดตัว XAUTH bruteforce นั้นค่อนข้างง่าย:

Python ikeforce.py 37.59.0.253 -b -i vpn -k cisco123 -u admin -w wordlists/passwd.txt -t 5 2 1 2 [+] โปรแกรมเริ่มต้นในโหมด XAUTH Brute Force [+] มีผู้ใช้คนเดียว - การบังคับแบบเดรัจฉาน รหัสผ่านสำหรับผู้ใช้: ผู้ดูแลระบบ [*] การรับรองความถูกต้อง XAUTH สำเร็จ! ชื่อผู้ใช้: ผู้ดูแลระบบ รหัสผ่าน: ซิสโก้

ในกรณีนี้ค่าที่พบก่อนหน้านี้ทั้งหมดจะถูกระบุ: ID (สวิตช์ -i), PSK ที่กู้คืน (สวิตช์ -k) และการเข้าสู่ระบบที่คาดหวัง (สวิตช์ -u) IKEForce รองรับทั้งการค้นหาการเข้าสู่ระบบแบบ Brute Force และการค้นหาผ่านรายการการเข้าสู่ระบบ ซึ่งสามารถระบุได้ด้วยพารามิเตอร์ -U ในกรณีที่อาจบล็อกการเลือกได้ จะมีตัวเลือก -s ซึ่งช่วยให้คุณลดความเร็วของกำลังเดรัจฉานได้ อย่างไรก็ตาม ยูทิลิตี้นี้มาพร้อมกับพจนานุกรมดีๆ มากมาย ซึ่งมีประโยชน์อย่างยิ่งในการตั้งค่าพารามิเตอร์ ID

เข้าสู่ระบบเครือข่ายภายใน

ตอนนี้เรามีข้อมูลทั้งหมดแล้ว ขั้นตอนสุดท้ายก็ยังคงอยู่ - การเจาะเครือข่ายท้องถิ่นจริงๆ ในการทำเช่นนี้ เราจำเป็นต้องมีไคลเอนต์ VPN บางประเภท ซึ่งมีอยู่มากมาย แต่ในกรณีของ Kali คุณสามารถใช้ VPNC ที่ติดตั้งไว้ล่วงหน้าได้อย่างง่ายดาย เพื่อให้มันใช้งานได้ คุณต้องปรับไฟล์กำหนดค่าหนึ่งไฟล์ - /etc/vpnc/vpn.conf หากไม่มีอยู่ คุณจะต้องสร้างและกรอกพารามิเตอร์ที่ชัดเจนจำนวนหนึ่ง:

เกตเวย์ IPSec 37.59.0.253 IPSec ID vpn ความลับของ IPSec cisco123 IKE Authmode psk Xauth ชื่อผู้ใช้ ผู้ดูแลระบบ Xauth รหัสผ่าน cisco

ที่นี่เราจะเห็นว่ามีการใช้ข้อมูลทั้งหมดที่พบในขั้นตอนก่อนหน้านี้ - ค่า ID, PSK, การเข้าสู่ระบบและรหัสผ่านของปัจจัยที่สอง หลังจากนั้นการเชื่อมต่อจะเกิดขึ้นด้วยคำสั่งเดียว:

รูท@กาลี:~# vpnc vpn

การปิดใช้งานก็ค่อนข้างง่ายเช่นกัน:

Root@kali:~# vpnc-disconnect

คุณสามารถตรวจสอบว่าการเชื่อมต่อใช้งานได้หรือไม่โดยใช้คำสั่ง ifconfig tun0

วิธีสร้างการป้องกันที่เชื่อถือได้

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

ผลลัพธ์เป็นอย่างไร?

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

0 บทความนี้ให้ภาพรวมของเครื่องมือความปลอดภัย IP (ความปลอดภัย IP) และโปรโตคอล IPSec ที่เกี่ยวข้องที่มีอยู่ในผลิตภัณฑ์ของ Cisco ที่ใช้ในการสร้างเครือข่ายส่วนตัวเสมือน (VPN) ในบทความนี้ เราจะอธิบายว่า IPSEC คืออะไร และโปรโตคอลและอัลกอริธึมความปลอดภัยใดบ้างที่รองรับ IPSEC

การแนะนำ

IP Security คือชุดของโปรโตคอลที่เกี่ยวข้องกับปัญหาการเข้ารหัส การรับรองความถูกต้อง และความปลอดภัยระหว่างการขนส่งแพ็กเก็ต IP ขณะนี้มีข้อเสนอมาตรฐานเกือบ 20 ข้อเสนอและ RFC 18 รายการ

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

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

IPSec คือชุดโปรโตคอลและอัลกอริธึมความปลอดภัยตามมาตรฐาน เทคโนโลยี IPSec และโปรโตคอลความปลอดภัยที่เกี่ยวข้องเป็นไปตามมาตรฐานเปิดที่ดูแลโดย Internet Engineering Task Force (IETF) และอธิบายไว้ในข้อกำหนด RFC และร่าง IETF IPSec ทำงานที่เลเยอร์เครือข่าย โดยให้ความปลอดภัยและการรับรองความถูกต้องสำหรับแพ็กเก็ต IP ที่ส่งระหว่างอุปกรณ์ IPSec (ฝ่าย) เช่น เราเตอร์ Cisco, ไฟร์วอลล์ PIX, ไคลเอนต์ Cisco VPN และตัวรวมศูนย์ และผลิตภัณฑ์อื่นๆ อีกมากมายที่รองรับ IPSec รองรับ IPSec จากเครือข่ายขนาดเล็กมากไปจนถึงเครือข่ายขนาดใหญ่มาก

สมาคมรักษาความปลอดภัย (SA)

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

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

คอมพิวเตอร์สองเครื่องในแต่ละด้านของ SA จะจัดเก็บโหมด โปรโตคอล อัลกอริธึม และคีย์ที่ใช้ใน SA แต่ละ SA ใช้ในทิศทางเดียวเท่านั้น การสื่อสารแบบสองทิศทางต้องการ SA สองแห่ง SA แต่ละแห่งใช้โหมดและโปรโตคอลเดียว ดังนั้น หากจำเป็นต้องใช้สองโปรโตคอลสำหรับหนึ่งแพ็กเก็ต (เช่น AH และ ESP) ก็จำเป็นต้องมี SA สองอัน

โปรโตคอล IKE (Internet Key Exchange) เป็นโปรโตคอลไฮบริดที่ให้บริการเฉพาะสำหรับ IPSec ได้แก่ การรับรองความถูกต้องของฝ่าย IPSec การเจรจาต่อรองพารามิเตอร์การเชื่อมโยงความปลอดภัย IKE และ IPSec และการเลือกคีย์สำหรับอัลกอริธึมการเข้ารหัสที่ใช้ภายใน IPSec โปรโตคอล IKE อาศัย ISAKMP (Internet Security Association และ Key Management Protocol) และโปรโตคอล Oakley ซึ่งใช้เพื่อจัดการกระบวนการสร้างและประมวลผลคีย์การเข้ารหัสที่ใช้ในการแปลง IPSec โปรโตคอล IKE ยังใช้เพื่อสร้างความสัมพันธ์ด้านความปลอดภัยระหว่างฝ่าย IPSec ที่อาจเกิดขึ้น
ทั้ง IKE และ IPSec ใช้การเชื่อมโยงความปลอดภัยเพื่อระบุพารามิเตอร์การสื่อสาร
IKE รองรับชุดฟังก์ชันพื้นฐานต่างๆ สำหรับใช้ในโปรโตคอล หนึ่งในนั้นคือฟังก์ชันแฮชและฟังก์ชันสุ่มหลอก (PRF)

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

H(m1)=H(m2) โดยที่ H คือฟังก์ชันแฮช

สำหรับฟังก์ชันสุ่มหลอก ปัจจุบันฟังก์ชันแฮชถูกใช้แทน PRF พิเศษในการออกแบบ HMAC (HMAC เป็นกลไกการตรวจสอบสิทธิ์ข้อความโดยใช้ฟังก์ชันแฮช) ในการกำหนด HMAC เราจำเป็นต้องมีฟังก์ชันแฮชการเข้ารหัส (เรียกว่า H) และคีย์ลับ K เราถือว่า H เป็นฟังก์ชันแฮชที่ข้อมูลถูกแฮชโดยใช้ขั้นตอนการบีบอัดที่ใช้ตามลำดับกับลำดับของบล็อกข้อมูล เราแสดงด้วย B ความยาวของบล็อกดังกล่าวเป็นไบต์และความยาวของบล็อกที่ได้รับจากการแฮชโดย L (L
ipad = ไบต์ 0x36 ซ้ำ B ครั้ง;
opad = ไบต์ 0x5C ซ้ำ B ครั้ง

หากต้องการคำนวณ HMAC จากข้อมูล "ข้อความ" คุณต้องดำเนินการต่อไปนี้:

H(K XOR opad, H(K XOR ipad, ข้อความ))

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

โครงสร้างพื้นฐานของ IPSec

เครือข่าย VPN ที่ใช้ IPSec สามารถสร้างได้โดยใช้อุปกรณ์ Cisco ที่หลากหลาย เช่น เราเตอร์ Cisco, ไฟร์วอลล์ Cisco Secure PIX, ซอฟต์แวร์ไคลเอนต์ Cisco Secure VPN และเราเตอร์ Cisco VPN 3000 และ 5000 series มีการรองรับ VPN ในตัวพร้อมคุณสมบัติที่สอดคล้องกัน ความสามารถของซอฟต์แวร์ Cisco IOS ซึ่งช่วยลดความซับซ้อนของโซลูชันเครือข่ายและลดต้นทุนโดยรวมของ VPN ในขณะเดียวกันก็ให้การป้องกันหลายระดับของบริการที่มีให้ PIX Firewall เป็นอุปกรณ์เครือข่ายประสิทธิภาพสูงที่สามารถให้บริการจุดสิ้นสุดของอุโมงค์ได้ โดยให้ปริมาณงานสูงและฟังก์ชันไฟร์วอลล์ที่เหนือกว่า ซอฟต์แวร์ CiscoSecure VPN Client รองรับข้อกำหนด VPN การเข้าถึงระยะไกลที่เข้มงวดที่สุดสำหรับอีคอมเมิร์ซและแอปพลิเคชันการเข้าถึงผ่านมือถือ โดยนำเสนอการนำมาตรฐาน IPSec ไปใช้อย่างสมบูรณ์ และรับประกันการทำงานร่วมกันที่เชื่อถือได้ระหว่างเราเตอร์ Cisco และไฟร์วอลล์ PIX

IPSec ทำงานอย่างไร


IPSec ใช้เทคโนโลยีและวิธีการเข้ารหัสจำนวนหนึ่ง แต่โดยทั่วไปแล้ว IPSec ถือเป็นขั้นตอนหลักดังต่อไปนี้:
  • ขั้นตอนที่ 1: เริ่มกระบวนการ IPSecการรับส่งข้อมูลที่ต้องมีการเข้ารหัสตามนโยบายความปลอดภัย IPSec ที่ตกลงกันโดยฝ่าย IPSec จะเริ่มต้นกระบวนการ IKE
  • ขั้นตอนที่ 2: IKE ระยะที่หนึ่ง- กระบวนการ IKE จะรับรองความถูกต้องฝ่ายต่างๆ ของ IPSec และเจรจาพารามิเตอร์การเชื่อมโยงด้านความปลอดภัยของ IKE ส่งผลให้เกิดช่องทางที่ปลอดภัยสำหรับการเจรจาต่อรองพารามิเตอร์การเชื่อมโยงด้านความปลอดภัยของ IPSec ในระหว่างระยะที่สองของ IKE
  • ขั้นตอนที่ 3: IKE ระยะที่สอง- กระบวนการ IKE จะเจรจาพารามิเตอร์การเชื่อมโยงความปลอดภัย IPSec และสร้างการเชื่อมโยงความปลอดภัย IPSec ที่เหมาะสมสำหรับการสื่อสารอุปกรณ์ปาร์ตี้
  • ขั้นตอนที่ 4: การถ่ายโอนข้อมูล- การสื่อสารเกิดขึ้นระหว่างการสื่อสารฝ่าย IPSec ตามพารามิเตอร์ IPSec และคีย์ที่จัดเก็บไว้ในฐานข้อมูลการเชื่อมโยงความปลอดภัย
  • ขั้นตอนที่ 5: ยุติอุโมงค์ IPSec- การเชื่อมโยงด้านความปลอดภัยของ IPSec ยุติลงเนื่องจากถูกลบหรือเกินขีดจำกัดอายุการใช้งานแล้ว
ส่วนต่อไปนี้จะอธิบายขั้นตอนเหล่านี้โดยละเอียดยิ่งขึ้น

IPSec อาศัยเทคโนโลยีและวิธีการเข้ารหัสจำนวนหนึ่ง แต่โดยทั่วไปแล้ว IPSec ถือเป็นขั้นตอนหลักดังต่อไปนี้:

    ขั้นตอนที่ 1 เริ่มต้นกระบวนการ IPSec- การรับส่งข้อมูลที่ต้องมีการเข้ารหัสตามนโยบายความปลอดภัย IPSec ที่ตกลงกันโดยฝ่าย IPSec จะเริ่มต้นกระบวนการ IKE

    ขั้นตอนที่ 2 ไอเค เฟส 1- กระบวนการ IKE รับรองความถูกต้องฝ่ายต่างๆ ของ IPSec และเจรจาพารามิเตอร์การเชื่อมโยงความปลอดภัยของ IKE ส่งผลให้เกิดช่องทางที่ปลอดภัยสำหรับการเจรจาต่อรองพารามิเตอร์การเชื่อมโยงความปลอดภัย IPSec ในระหว่างระยะที่สองของ IKE

    ขั้นตอนที่ 3 ไอเค เฟสสอง- กระบวนการ IKE จะเจรจาพารามิเตอร์การเชื่อมโยงความปลอดภัย IPSec และสร้างการเชื่อมโยงความปลอดภัย IPSec ที่เหมาะสมสำหรับการสื่อสารอุปกรณ์ปาร์ตี้

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

    ขั้นตอนที่ 5 กำลังยุติอุโมงค์ IPSec- การเชื่อมโยงด้านความปลอดภัยของ IPSec ยุติลงเนื่องจากถูกลบหรือเกินขีดจำกัดอายุการใช้งานแล้ว

โหมดการทำงานของ IPSec

การทำงานของ IPSec มีสองโหมด: การขนส่งและอุโมงค์

ในโหมดการขนส่ง เฉพาะส่วนข้อมูลของแพ็กเก็ต IP เท่านั้นที่ถูกเข้ารหัส การกำหนดเส้นทางจะไม่ได้รับผลกระทบเนื่องจากส่วนหัวของแพ็กเก็ต IP ไม่มีการเปลี่ยนแปลง โดยทั่วไปแล้วโหมดการขนส่งจะใช้เพื่อสร้างการเชื่อมต่อระหว่างโฮสต์

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

การเจรจาเพื่อการปฏิรูป IPSec

โปรโตคอล IKE จะเจรจาการแปลง IPSec (อัลกอริธึมความปลอดภัย IPSec) การแปลง IPSec และอัลกอริธึมการเข้ารหัสที่เกี่ยวข้องมีดังนี้:

    โปรโตคอล AH (ส่วนหัวการรับรองความถูกต้อง - ส่วนหัวการรับรองความถูกต้อง)โปรโตคอลที่ปลอดภัยที่ให้บริการการตรวจสอบสิทธิ์และ (ตัวเลือก) การตรวจจับการเล่นซ้ำ

    โปรโตคอล AH ทำหน้าที่เป็นลายเซ็นดิจิทัลและทำให้แน่ใจได้ว่าข้อมูลในแพ็กเก็ต IP จะไม่ถูกดัดแปลง โปรโตคอล AH ไม่มีบริการเข้ารหัสและถอดรหัสข้อมูล โปรโตคอลนี้สามารถใช้งานได้อย่างอิสระหรือใช้ร่วมกับโปรโตคอล ESPโปรโตคอล ESP (Encapsulating Security Payload)

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

    มาตรฐาน DES (มาตรฐานการเข้ารหัสข้อมูล - มาตรฐานการเข้ารหัสข้อมูล)เวอร์ชันหนึ่งของ DES ที่ใช้ DES มาตรฐานซ้ำสามครั้งพร้อมกับคีย์ที่แตกต่างกันสามคีย์ ซึ่งเพิ่มความแข็งแกร่งของ DES เป็นสามเท่า อัลกอริธึม 3DES ถูกใช้ภายใน IPSec เพื่อเข้ารหัสและถอดรหัสสตรีมข้อมูล อัลกอริธึมนี้ใช้คีย์ 168 บิต ซึ่งรับประกันความน่าเชื่อถือในการเข้ารหัสสูง IKE และ IPSec ใช้อัลกอริทึม 3DES เพื่อเข้ารหัสข้อความ

    เออีเอส(มาตรฐานการเข้ารหัสขั้นสูง- โปรโตคอล AES ใช้อัลกอริธึมการเข้ารหัส Rine Dale4 ซึ่งให้การเข้ารหัสที่แข็งแกร่งกว่ามาก

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

    การแปลง IPSec ยังใช้อัลกอริธึมการแฮชมาตรฐานสองอัลกอริธึมเพื่อให้การรับรองความถูกต้องของข้อมูลอัลกอริทึม MD5 (ข้อความสำคัญ 5)

    อัลกอริธึมการแฮชที่ใช้ในการตรวจสอบแพ็กเก็ตข้อมูล ผลิตภัณฑ์ของ Cisco ใช้ HMAC (รหัสตรวจสอบข้อความที่ถูกแฮช) ที่คำนวณโดย MD5 ซึ่งเป็นรหัสตรวจสอบข้อความที่ได้รับการปกป้องเพิ่มเติมโดยการแฮช การแฮชเป็นกระบวนการเข้ารหัสทางเดียว (เช่น ไม่สามารถย้อนกลับได้) ที่สร้างเอาต์พุตที่มีความยาวคงที่สำหรับข้อความอินพุตที่มีความยาวตามใจชอบ IKE, AH และ ESP ใช้ MD5 สำหรับการตรวจสอบข้อมูลอัลกอริทึม SHA-1 (อัลกอริทึมแฮชที่ปลอดภัย-1 - อัลกอริทึมแฮชที่ปลอดภัย 1)

ภายใต้โปรโตคอล IKE คีย์สมมาตรจะถูกสร้างขึ้นโดยใช้อัลกอริทึม Diffie-Hellman โดยใช้ DES, 3DES, MD5 และ SHA โปรโตคอล Diffie-Hellman เป็นโปรโตคอลการเข้ารหัสตามการใช้กุญแจสาธารณะ ช่วยให้ทั้งสองฝ่ายสามารถตกลงเกี่ยวกับรหัสลับที่ใช้ร่วมกันได้โดยไม่ต้องมีช่องทางการสื่อสารที่ปลอดภัยเพียงพอ ต้องใช้คีย์ลับที่ใช้ร่วมกันสำหรับอัลกอริทึม DES และ NMAC อัลกอริทึม Diffie-Hellman ถูกใช้ภายใน IKE เพื่อสร้างคีย์เซสชัน กลุ่ม Diffie-Hellman (DH) – กำหนด “ความแข็งแกร่ง” ของคีย์การเข้ารหัสที่ใช้ในขั้นตอนการแลกเปลี่ยนคีย์ ยิ่งหมายเลขกลุ่มสูง กุญแจก็จะยิ่ง "แข็งแกร่ง" และปลอดภัยยิ่งขึ้น อย่างไรก็ตาม เราควรคำนึงถึงความจริงที่ว่าเมื่อหมายเลขกลุ่ม DH เพิ่มขึ้น "ความแข็งแกร่ง" และระดับความปลอดภัยของคีย์จะเพิ่มขึ้น แต่ในขณะเดียวกันภาระบนโปรเซสเซอร์กลางก็เพิ่มขึ้น เนื่องจากการสร้างคีย์ "แข็งแกร่งขึ้น" ต้องใช้ เวลาและทรัพยากรมากขึ้น

อุปกรณ์ WatchGuard รองรับกลุ่ม DH 1, 2 และ 5:

    DH กลุ่ม 1: คีย์ 768 บิต

    DH กลุ่ม 2: คีย์ 1024 บิต

    DH กลุ่ม 5: คีย์ 1536 บิต

อุปกรณ์ทั้งสองที่สื่อสารผ่าน VPN ต้องใช้กลุ่ม DH เดียวกัน กลุ่ม DH ที่จะใช้โดยอุปกรณ์จะถูกเลือกระหว่างขั้นตอน IPSec Phase 1