Sunday, December 2, 2007

พื้นฐานระบบ Firewall

ไฟร์วอลล์ (Firewall) คือเครื่องมือที่ใช้ในการป้องกันเน็ตเวิร์กจากการสื่อสารทั่วไปที่ไม่ได้รับอนุญาต โดยที่เครื่องมือที่ว่านี้อาจจะเป็น Hardware หรือ Software หรือทั้งสองรวมกันขึ้นอยู่กับวิธีการหรือ Firewall Architecture ที่ใช้

ไฟร์วอลล์ (Firewall) เป็นเครื่องมือที่ทำหน้าที่รักษาความปลอดภัยในเชิงการป้องกัน (Protect) ซึ่งจะทำหน้าที่ควบคุมการเข้าถึงเน็ตเวิร์ก (Access Control) โดยอาศัยกฎพื้นฐานที่เรียกว่า Rule Base

ปัญหาความปลอดภัยของเน็ตเวิร์ก คือ การควบคุมการเข้าถึงระบบหรือข้อมูลภายในเน็ตเวิร์ก หรือที่เรียกว่า Logical Access ซึ่งก่อนที่จะเกิด Logical Access ได้นั้นต้องทำการสร้างการเชื่อมต่อ (Logical Conection) และการเชื่อมต่อนั้นต้องใช้ Ptococol ดังนั้นไฟร์วอลล์จึงจะทำหน้าที่ตรวจสอบการเชื่อมต่อภายในเครือข่าย ให้เป็นไปตามกฏ

คุณสมบัติของ Firewall
คุณสมบัติทั่วไปของ Firewall นั้นจะมีอยู่ 3 อย่างด้วยกันคือ
1. Protect
ไฟร์วอลล์เป็นเครื่องมือที่ทำงานในเชิงการป้องกัน โดย packet ที่จะสามารถผ่านเข้า-ออกได้นั้น จะต้องเป็น packet ที่มันเห็นว่าปลอดภัย หาก packet ใดที่มันเห็นว่าไม่ปลอดภัย มันก็จะไม่อนุญาตให้ผ่าน โดยการตัดสินว่า packet ปลอดภัยหรือไม่นั้นขึ้นอยูกับกฎพื้นฐานที่ Administrator ได้กำหนดไว้

2. Access Control
ไฟร์วอลล์จะควบคุมการ Access ของ Host ต่างๆ ให้เป็นไปตามกฎพื้นฐานที่ Administrator ได้กำหนดไว้

3. Rule Base
ไฟร์วอลล์จะทำการควบคุมการ Access โดยอาศัยการเปรียบเทียบคุณสมบัติของ Packet ที่จะผ่านเข้า-ออก กับกฎพื้นฐานที่ Administrator ได้กำหนดไว้ หากพบว่าไม่มีกฎห้ามไว้ก็จะอนุญาตให้ผ่านไปได้ แต่ถ้ามีกฎข้อใดข้อหนึ่งห้ามมันก็จะไม่ยอมให้ผ่าน

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

1. Packet Filtering
เป็น Firewall พื้นฐานที่ควบคุม traffic ไปตามทางที่เหมาะสมเพียงทางเดียว โดยอาศัยการตรวจสอบข้อมูลที่ปรากฎอยู่ใน packet เปรียบเทียบกับเงื่อนไขที่กำหนดไว้ Firewall ประเภทนี้ส่วนมากจะติดตั้งอยู่บน router จึงเรียก Firewall ชนิดนี้ว่า Screening Router

ข้อดีของ Screening Router
- ราคาถูกเพราะเป็นคุณสมบัติที่มีใน router อยู่แล้ว
- หาก Network ไม่ใหญ่มากนักสามารถใช้งานแทน Firewall ได้
- การใช้ Screening Router ควบคู่กับ Firewall จะช่วยแบ่งภาระของ Firewall ได้มาก
- สามารถใช้ป้องกันบางประเภทที่ Firewall ไม่สามารถป้องกันได้

ข้อเสียของ Screening Router
- การใช้งานยาก และไม่มีมาตรฐานกลาง
- ไม่สามารถกำหนดกฎที่ซับซ้อนได้ และมีความสามารถจำกัด
- อาจทำให้ Network ช้าได้

2. Circuit-Level (Statefull Firewall)
เป็น Firewall ที่ทำงานโดยที่สามารถเข้าใจสถานะของการสื่อสารทั้งกระบวนการ โดยแทนที่จะดูข้อมูลจากเฮดเดอร์เพียงอย่างเดียว Statefull Inspection จะนำเอาส่วนข้อมูลของแพ็กเก็ต (message content) และข้อมูลที่ได้จากแพ็กเก็ตก่อนหน้านี้ที่ได้ทำการบันทึกเอาไว้ นำมาพิจารณาด้วย จึงทำให้สามารถระบุได้ว่าแพ็กเก็ตใดเป็นแพ็กเก็ตที่ติดต่อเข้ามาใหม่ หรือว่าเป็นส่วนหนึ่งของการเชื่อมต่อที่มีอยู่แล้ว

ตัวอย่างผลิตภัณฑ์ทางการค้าที่ใช้ Statefull Inspection Technology ได้แก่
- Check Point Firewall-1
- Cisco Secure Pix Firewall
- SunScreen Secure Net

และส่วนที่เป็น open source แจกฟรี ได้แก่ NetFilter ใน Linux (iptables ในลีนุกซ์เคอร์เนล 2.3 เป็นต้นไป)

ข้อดีของ Statefull Firewall
- ใช้งานง่าย เพราะถูกออกแบบมาทำหน้าที่ Firewall โดยเฉพาะ
- ประสิทธิภาพสูง เพราะถูกออกแบบมาทำหน้าที่ Firewall โดยเฉพาะ
- สามารถทำ IDS เพื่อป้องกันการโจมตีได้
- การกำหนด Access Ruleทำได้ง่าย
- สามารถเพิ่มบริการอื่นๆได้
- มีความสามารถในการทำ Authentication
- การสื่อสารระหว่าง Firewall กับ Administration Console มีความปลอดภัยสูง

ข้อเสียของ Statefull Firewall
- ราคาแพง
- มีความเสี่ยงต่อการถูกเจาะระบบในระดับ OS ที่ตัว Firewall ติดตั้ง
- ผู้ใช้จำเป็นต้องอาศัยผู้ผลิตค่อนข้างมาก โดยเฉพาะ Firewall ประเภท Network Appliance คือ เป็น
ทั้งซอฟต์แวร์และฮาร์ดแวร์

3. Application Level Firewall (Proxy)
เป็นแอพพลิเคชันโปรแกรมที่ทำงานอยู่บนไฟร์วอลล์ที่ตั้งอยู่ระหว่างเน็ตเวิร์ก 2 เน็ตเวิร์ก ทำหน้าที่เพิ่มความปลอดภัยของระบบเน็ตเวิร์กโดยการควบคุมการเชื่อมต่อระหว่างเน็ตเวิร์กภายในและภายนอก Proxy จะช่วยเพิ่มความปลอดภัยได้มากเนื่องจากมีการตรวจสอบข้อมูลถึงในระดับของแอพพลิเคชันเลเยอร์ (Application Layer)

ลักษณะการทำงานของ Application Level Firewall นั้นคือเมื่อไคลเอนต์ต้องการใช้เซอร์วิสภายนอก ไคลเอนต์จะทำการติดต่อไปยัง Proxy ก่อน ไคลเอนต์จะเจรจา (negotiate) กับ Proxy เพื่อให้ Proxy ติดต่อไปยังเครื่องปลายทางให้ เมื่อ Proxy ติดต่อไปยังเครื่องปลายทางให้แล้วจะมีการเชื่อมต่อ (connection) 2 การเชื่อมต่อ คือ ไคลเอนต์กับ Proxy และ Proxy กับเครื่องปลายทาง โดยที่ Proxy จะทำหน้าที่รับข้อมูลและส่งต่อข้อมูลให้ใน 2 ทิศทาง ทั้งนี้ Proxy จะทำหน้าที่ในการตัดสินใจว่าจะให้มีการเชื่อมต่อกันหรือไม่ จะส่งต่อแพ็กเก็ตให้หรือไม่

ข้อดีของ Application Level Firewall (Proxy)
- สามารถควบการติดต่อสื่อสารระหว่าง Internet กับ Network ในระดับ Application เท่านั้น ทำให้ลด- ความเสี่ยงที่จะถูกคุกคามในระดับ Network Layer
- สามารถเพิ่มหน้าที่อย่างอื่นเข้าไปได้ เช่นการควบคุมการเข้าใช้งานเว็บไซต์ที่ไม่ต้องการได้
- สามารถทำการแคชข้อมูลไว้ที่ตัว proxy สำหรับข้อมูลที่ใช้บ่อย ทำให้เพิ่มความเร็วในการใช้งานใน
ครั้งต่อไป
- การใช้งานแบนด์วิดธ์มีประสิทธิภาพสูงขึ้น
- มีความสามารถในการตรวจสอบผู้ใช้ (User Authenticate)
- มีความสามารถในการกลั่นกรองเนื้อหาได้ (Content Filtering)

ข้อเสียของ Application Level Firewall (Proxy)
- ใช้ได้กับ Application บางตัวเท่านั้น
- ไม่สามารถใช้งานกับ Application ที่ต้องการการสื่อสารโดยตรงแบบ end-to-end ได้
- เสี่ยงต่อการละเมิดความเป็นส่วนตัว
- จำเป็นต้องมี proxy หลายตัวหากต้องการใช้งานหลาย Application
- อาจเป็นสาเหตุให้เกิดปัญหาคอขวดได้
- เสี่ยงต่อการโดนโจมตีแบบ DoS

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

สิ่งที่ Firewall สามารถป้องกันได้
1. Network Scanning – ด้วยคุณสมบัติที่ Firewall สามารถควบคุมการเข้า-ออก ของ packet ได้ มันจึงสามารถจำกัดปลายทางของ packet ที่ผ่านเข้ามาเฉพาะ Host ที่ได้รับอนุญาตให้ติดต่อได้เท่านั้น
2. Host Scanning – Firewall จะทำการตรวจจับการ scan เพื่อหาว่ามีการรัน Service อะไรบ้างบน host
3. Inbound Access - ควบคุมการเข้ามาของ packet เฉพาะที่ได้รับอนุญาตตาม Rule Base
4. Outbound Access - ควบคุมการออกไปของ packet เฉพาะที่ได้รับอนุญาตตาม Rule Base
5. การลักลอบส่งข้อมูล
6. Network Denial of Service – ป้องกันการก่อกวนเพื่อไม่ให้ Host สามารถให้บริการได้ เช่นการทำให้เน็ตเวิร์กท่วมไปด้วยข้อมูล (Network Flooding) ทำการส่ง packet จำนวนมากไปยัง Host เพื่อขอใช้บริการ (SYN Flooding)
7. Trojan Horse, Backdoor, Back Orifice

สิ่งที่ Firewall ไม่สามารถป้องกันได้
1. Hacker
2. Allowed Services
3. Application Vulnerability
4. OS Vulnerability
5. Virus
6. การดักอ่านข้อมูลโดย Sniffer
7. Spammed Mail
8. Administration Mistake

Keywords: Firewall

© 2007 TWAB. All Rights Reserved.

1 Comment:

Anonymous said...

thank you.

Copied.