IT346 Information System Security Faculty of Information Technology Page Week 6-2: Firewall (2) – Firewall Rules ผศ.ดร.มัชฌิกา อ่องแตง 1
Jun 25, 2015
IT346 Information System Security
Faculty of Information Technology Page
IT346 Information System Security Week 6-2: Firewall (2) – Firewall Rules
ผศ.ดร.มัชฌิกา อ่องแตง
1
นโยบายการรักษาความปลอดภัย
� สิ่งที่สําคัญที่สุดสําหรับการใช้ firewall คือ การกําหนดนโยบายการรักษาความปลอดภัย (Network Security Policy) ถึงแม้ว่า firewall จะมีประสิทธิภาพแค่ไหน แต่ถ้ามีนโยบายการรักษาความปลอดภัยที่หละหลวมก็ไม่มีประโยชน์มากนัก
Faculty of Information Technology Page
� กฎที่บังคับใช้นโยบายการรักษาความปลอดภัยใน firewall นั้นเรียกว่า ACL (Access Control List) หรือ Firewall Rule
� การตรวจสอบกฎใน ACL นั้น ส่วนใหญ่เป็นแบบ First Match โดย firewall จะตรวจสอบกฎทีละข้อตามลําดับจนกระทั่งพบกับกฎที่ตรงกับเงื่อนไข
2
ความสามารถของ Firewall� บังคับใช้นโยบายด้านความปลอดภัยโดยการกําหนดกฎให้กับ
ไฟร์วอลล์ ว่าจะอนุญาตหรือไม่ให้ใช้เซอร์วิสชนิดใด� ป้องกันการ login ที่ไม่ได้รับอนุญาตที่มาจากภายนอกเครือข่าย� ปิดกั้นไม่ให้ traffic จากนอกเครือข่ายเข้ามาภายในเครือข่ายแต่ก็ยอมให้ผู้ที่
อยู่ภายในเครือข่ายสามารถติดต่อกับโลกภายนอกได้
Faculty of Information Technology Page
อยู่ภายในเครือข่ายสามารถติดต่อกับโลกภายนอกได้
� เลือกป้องกันเน็ตเวิร์กบางส่วนจากการเข้าถึงของเน็ตเวิร์กภายนอก‣ เช่น ถ้าหากเรามีบางส่วนที่ต้องการให้ภายนอกเข้ามาใช้เซอร์วิส (เช่น ถ้ามี Web
Server) แต่สว่นที่เหลือไม่ต้องการให้ภายนอกเข้ามากรณีเช่นนี้เราสามารถใช้ไฟร์วอลล์ช่วยได้
3
ความสามารถของ Firewall� ทําให้การพิจารณาดูแลและการตัดสินใจด้านความปลอดภัยของระบบเป็นไป
ได้ง่ายขึ้น‣ เนื่องจากการติดต่อทุกชนิดกับเน็ตเวิร์กภายนอกจะต้องผ่านไฟร์วอลล์‣ การดูแลที่จุดนี้เป็นการดูแลความปลอดภัยในระดับของเน็ตเวิร์ก (Network-
based Security) บันทึกข้อมูลกิจกรรมต่างๆ (audit) ที่ผ่านเข้าออกเน็ตเวิร์กได้อยา่งมี
Faculty of Information Technology Page
based Security) � บันทึกข้อมูลกิจกรรมต่างๆ (audit) ที่ผ่านเข้าออกเน็ตเวิร์กได้อยา่งมี
ประสิทธิภาพ‣ Firewall เป็นจุดรวมสําหรับการรักษาความปลอดภัยและการทํา audit
(เปรียบเสมือนจุดรับแรงกระแทกของเครือข่าย)� ไฟร์วอลล์บางชนิดสามารถป้องกันไวรัสได้โดยจะทําการตรวจไฟล์ที่โอนย้าย
ผ่านทางโปรโตคอล HTTP, FTP และ SMTP
4
ข้อจํากัดของ firewall� Firewall ไม่สามารถป้องกันการโจมตีที่ไม่ได้กระทําผ่าน Firewall‣ อันตรายที่เกิดจากเน็ตเวิร์กภายในไม่สามารถป้องกันได้เนื่องจากอยู่ภายในเน็ต
เวิร์กเองไม่ได้ผ่านไฟร์วอลล์เข้ามา‣ อันตรายจากภายนอกที่ไม่ได้ผ่านเข้ามาทางไฟร์วอลล์เช่นการ Dial-up เข้า
มายังเน็ตเวิร์กภายในโดยตรงโดยไม่ได้ผ่านไฟร์วอลล์
Faculty of Information Technology Page
� ไม่สามารถป้องกันการโจมตีที่เข้ามากับ application protocols ต่างๆ (เรียกว่าการ tunneling) หรือกับโปรแกรม client ที่มีความล่อแหลมและถูกดัดแปลงให้กระทําการโจมตีได้ (โปรแกรมที่ถูกทําให้เป็น Trojan horse)
5
ข้อจํากัดของ firewall� ไม่สามารถป้องกัน virus ได้อย่างมีประสิทธิภาพ‣ ถึงแม้จะมีไฟรว์อลล์บางชนิดทีส่ามารถป้องกันไวรัสได้แต่ก็ยังไม่มีไฟร์วอลลช์นิด
ใดทีส่ามารถตรวจสอบไวรัสได้ในทุกๆโปรโตคอล‣ จํานวน virus มีอยู่มากมาย จึงจะเป็นการยากมากที่ firewall จะสามารถ
ตรวจจับ pattern ของ virus ทั้งหมดได้
Faculty of Information Technology Page 6
ข้อดี-ข้อเสียของการใช้ไฟร์วอลล์� ข้อดี‣ ทําให้การจัดการด้านความมั่นคงง่ายขึ้น‣ สามารถที่จะสร้างการเก็บข้อมูลและการมอนิเตอร์แบบขั้นซับซ้อนได้‣ สามารถ VPN โดยการใช้ IPSec ไปหาเครื่องอื่นได้‣ สามารถแบ่งแยก หรือ แยกปัญหาได้‣ ซ่อน IP address ของเครื่องภายใน จากภายนอกได้
Faculty of Information Technology Page
‣ ซ่อน IP address ของเครื่องภายใน จากภายนอกได้
� ข้อเสีย‣ เป็นคอขวดของระบบ‣ เป็นจุดผิดพลาดเพียงจุดเดียว‣ อาจความมั่นใจที่ผิดในสิง่ที่ทาํทีค่ิดว่าถูก
7
Rules of Packet Filtering� การทํางานของ Packet Filtering อาศัยเงื่อนไขในการตัดสินใจว่าจะ
อนุญาตให้ packet ใดๆผ่านไปหรือไม่ จากกฏใน Access Control List (ACL)
� ACL กําหนดเงื่อนไขของข้อมูลสื่อสาร หรือ ทราฟฟิก (traffic) ที่ได้รับอนุญาต (permit) ให้เข้าถึง หรือ ถูกปฏิเสธ (deny) ไม่ให้เข้าถึงเครือข่าย
Faculty of Information Technology Page
อนุญาต (permit) ให้เข้าถึง หรือ ถูกปฏิเสธ (deny) ไม่ให้เข้าถึงเครือข่าย
8
พฤติกรรมของ ACL โดยทั่วไป� ลําดับบรรทัดของ Access Control Entry (ACE) แต่ละบรรทัดที่ถูกสร้าง
ลงไปใน ACL จะมีความสําคัญมาก
� ทุกๆ ACL ที่สร้างขึ้นมาจะมีเงื่อนไขสุดท้ายที่ถูกซ่อนไว้เสมอ เรานิยมเรียกว่า implicit deny all ซึ่งคือ ทราฟิกใดๆ ที่ไม่สอดคล้องกับเงื่อนไขใน
Faculty of Information Technology Page
เรียกว่า implicit deny all ซึ่งคือ ทราฟิกใดๆ ที่ไม่สอดคล้องกับเงื่อนไขในบรรทัดต่างๆ ก่อนหน้านี้ ทราฟิกนั้นจะถือว่า ถูกปฏิเสธ (deny/block) ไปโดยปริยายและถูกโยนทิ้งไปโดยอัตโนมัติ
9
พฤติกรรมของ ACL โดยทั่วไป� ACL จะถูกไล่เปรียบเทียบจากบรรทัดบนลงล่าง ทีละบรรทัด จนกว่าจะพบ
บรรทัดที่มีเงื่อนไขสอดคล้องกับแพ็กเก็ตที่วิ่งเข้ามาให้ตรวจเช็กในขณะนั้น
� เมื่อเงื่อนไขที่สอดคล้อง Firewall (ซึ่งส่วนมากจะติดตั้งที่เราเตอร์) จะดูว่า action ที่ตั้งไว้เป็น allow (permit) หรือ block (deny)
Faculty of Information Technology Page
action ที่ตั้งไว้เป็น allow (permit) หรือ block (deny) ‣ หากเป็น allow เราเตอร์จะอนุญาตให้ทราฟิก (traffic) นั้นวิ่งผ่านไปได้ ‣ แต่ถ้าเป็น block ทราฟิก (traffic) นั้นจะถูกโยนทิง้ (drop) ไป
10
ตัวอย่าง Firewall Rules
Source DestinationProtocol Action
Address Port Address Port
* * 119.46.85.5 * * Block
* * 192.168.10.1 22 TCP Allow
192.168.*.* * * 22 TCP Allow
* * * 80 TCP Allow
Faculty of Information Technology Page 11
* * * 80 TCP Allow
* * * 80 UDP Allow
* * * * * Block
ตัวอย่าง Firewall Rules� ไม่อนุญาตให้ host ใดๆ เชื่อมต่อไปยัง IP Address 119.46.85.5 ไม่ว่าจะเป็น
port ใดๆ หรือ protocol ใดๆ ‣ เช่น เมื่อ 119.46.85.5 เป็น host อันตราย
� อนุญาตให้ host ใดๆ เชื่อมต่อมายัง IP Address 192.168.10.1 ผ่าน port 22 ด้วย TCP protocol ได้‣ เช่น เมื่อ 192.168.10.1 เป็น Server ของเรา และให้บริการ SSH (port 22)
Faculty of Information Technology Page
‣ เช่น เมื่อ 192.168.10.1 เป็น Server ของเรา และให้บริการ SSH (port 22)� อนุญาตให้ host ภายในใดๆ เชื่อมต่อไปยัง IP Address ใดๆ ผ่าน port 22
ด้วย TCP protocol ได้‣ อนุญาตให้เชื่อมต่อไปยัง Server ใดก็ได้ที่ให้บริการ SSH
� อนุญาตการเชื่อมต่อผ่าน port 80 (HTTP) ได้ทั้ง TCP และ UDP protocol� ไม่อนุญาตการเชื่อมต่อแบบอื่น ที่ไม่ระบุใน ACL
12
ตัวอย่าง Packet Filtering Rules
� Packets มาจากหรือส่งไปยัง 75.13.126.11 ถูก blocked เนื่องจากโฮสต์ดังกล่าวไม่น่าไว้วางใจ� อนุญาตให้รับ inbound email (port 25 = SMTP incoming) จากภายนอกเข้ามาได้ แต่เข้ามายัง
Source SrcPort
Destination DestPort
Action Comment
75.13.126.11 * 75.13.126.11 * Block ไม่เชื่อถือ server นี้
* * 192.168.1.1 25 Allow Connection มายัง SMTP ของเรา
Faculty of Information Technology Page
� อนุญาตให้รับ inbound email (port 25 = SMTP incoming) จากภายนอกเข้ามาได้ แต่เข้ามายังgateway 192.168.1.1 ได้เท่านั้น
13
� มีการระบุ default policy มักใส่กฏข้อนี้ไว้เป็นข้อสุดท้ายเสมอ กล่าวคือ ให้ Block การเชื่อมต่อที่
นอกเหนือจากกฏที่ระบุไว้แล้ว
Source SrcPort
Destination DestPort
Flag Action Comment
* * * * * Block Default
ตัวอย่าง Packet Filtering Rules
� หลังจากที่ TCP connection ถูกเชื่อมต่อแล้ว จะมีการเซ็ต Flag ACK เพื่อตอบรับกลับตัวอย่างกฏที่จัดการกับ FTP connections
Source SrcPort
Destination DestPort
Flag Action
Comment
192.168.*.* * * * Allow การเชื่อมต่อขาออก
* * * * ACK Allow ตอบกลบัการเชื่อมต่อขาออก
* * * >1024 Allow Traffic ไปยังเครื่องที่ไม่เป็น Server
Faculty of Information Technology Page
ตัวอย่างกฏที่จัดการกับ FTP connections� FTP ประกอบด้วยการเชื่อมต่อแบบ TCP 2 การเชื่อมต่อทํางานประสานกัน: ‣ control connection ใช้ในการ setup ก่อนการส่งข้อมูล‣ data connection ใช้ในการส่งข้อมูล
� Data connection ใช้ port หมายเลขที่กําหนดโดย Server โดยมักจะใช้ port หมายเลขสูงๆ� กฏชุดนี้อนุญาต ‣ Traffic จากเครื่อง client ภายใน สามารถเชื่อมต่ออกไปออกไปภายนอกได้ ‣ Traffic จากภายนอก สามารถตอบกลับการเชื่อมต่อ (ACK) เข้ามาหาเครื่องภายในใดๆได้‣ Traffic จากภายนอก สามารถเชื่อมต่อมายังเครื่อง client เฉพาะที่เข้ามายัง port หมายเลขสูงๆ
14
กิจกรรม 1: วิเคราะห์ Firewall Rules� จับกลุ่ม 2 – 3 คน� พิจารณา Firewall Rules ที่กําหนดให้ เพื่อวิเคราะห์ข้อดี – ข้อจํากัด ของ
Firewall Rules แต่ละชุด
Faculty of Information Technology Page 15
กิจกรรม 1: วิเคราะห์ Firewall RulesSource Src
PortDestination Dest
PortFlag Action Comment
* * * 25 Allow Connection ไปยัง SMTP ภายนอก
� SMTP (Simple Mail Transfer Protocol) ใช้ Port 25 เป็น port default ที่รับการเชื่อมต่อสําหรับ SMTP
� จุดประสงค์ของกฏข้อนี้คือ เพื่อที่จะอนุญาตให้เปิดการเชื่อมต่อไปยังบริการ
Faculty of Information Technology Page 16
� จุดประสงค์ของกฏข้อนี้คือ เพื่อที่จะอนุญาตให้เปิดการเชื่อมต่อไปยังบริการ SMTP ภายนอกได้
� จุดอ่อนของการตั้ง Firewall Rules ในข้อนี้คืออะไร จงอธิบาย� จงแนะนําการตั้ง Firewall Rules ที่เหมาะสมสําหรับกรณีนี้
สรุป� ถึงแม้ว่า firewall จะเป็นเครื่องมือที่สามารถนํามาใช้ป้องกันการโจมตีจาก
ภายนอกเครือข่ายได้ อย่างมีประสิทธิภาพ การที่จะใช้ firewall ให้ได้ประโยชน์สูงสุดนั้นจะขึ้นอยู่กับนโยบายความปลอดภัยโดยรวมขององค์กร ด้วย
� แม้แต่ firewall ที่ดีที่สุดก็ไม่สามารถนํามาใช้แทนการมีจิตสํานึกในการที่จะ
Faculty of Information Technology Page
� แม้แต่ firewall ที่ดีที่สุดก็ไม่สามารถนํามาใช้แทนการมีจิตสํานึกในการที่จะรักษาความปลอดภัย ภายในเครือข่ายของผู้ที่อยู่ในเครือข่ายนั้นเอง
17
Network Address Translation (NAT)
� NAT ไม่ใช่เทคโนโลยีของ firewall แต่ firewall ส่วนใหญ่รวมฟังก์ชันการทํางานนี้เข้าไว้ด้วย
� NAT เป็นเทคโนโลยีที่ใช้สําหรับการแก้ปัญหาหมายเลขไอพีบนอินเทอร์เน็ตที่ไม่เพียงพอ
Faculty of Information Technology Page 18
Network Address Translation (NAT)
� หลักการทํางานของ NAT นั้นจะคล้ายกับหลักการทํางานของ StatefulInspection Firewall แต่มีส่วนเพิ่มเติมคือ ‣ Firewall จะเปลี่ยนแอดเดรสของทุกแพ็กเก็ตที่ต้องสง่ออกไปข้างนอก ‣ เมื่อ NAT gateway ได้รับแพ็กเก็ตจากคอมพิวเตอร์ภายในที่ใช้ Private IP
(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/24) ที่จะต้องส่งต่อไปยังอินเทอร์เน็ต NAT จะบันทึกหมายเลขไอพีที่เป็น source address, source
Faculty of Information Technology Page
(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/24) ที่จะต้องส่งต่อไปยังอินเทอร์เน็ต NAT จะบันทึกหมายเลขไอพีที่เป็น source address, source port, destination address, destination port หลังจากนั้น NAT จะเปลี่ยนsource address ให้เป็นหมายเลข IP address จรงิของ firewall แล้วสง่ต่อไป
19
Network Address Translation (NAT)
10.0.0.1
S: 10.0.0.1, 3345
D: 128.119.40.186, 80
1: host 10.0.0.1 ส่ง datagram ไปยัง128.119.40.186, 80
NAT translation tableWAN side address LAN side address
138.76.29.7, 5001 10.0.0.1, 3345
…… ……
2: NAT routerเปลี่ยน source address ของ datagram จาก10.0.0.1, 3345 เป็น138.76.29.7 พอร์ต5001, พร้อมอัปเดตNAT table
Faculty of Information Technology Page 20
10.0.0.1
10.0.0.2
10.0.0.3
1
10.0.0.4
138.76.29.7 S: 128.119.40.186, 80
D: 10.0.0.1, 3345 4
S: 138.76.29.7, 5001
D: 128.119.40.186, 802
NAT table
S: 128.119.40.186, 80
D: 138.76.29.7, 5001 33: Reply กลับมายังdestination address:138.76.29.7 พอร์ต 5001
4: NAT routerเปลี่ยน destination address ของ datagram จาก138.76.29.7 พอร์ต 5001 เป็น 10.0.0.1 พอร์ต 3345