สำนักวิทยบริการและเทคโนโลยีสารสนเทศ (สวส.)

Office of Academic Resources and Information Technology

วิธีการ patch หรือปิดช่องโหว่ HTTP.sys (MS15-034) ใน Windows

เมื่อวันที่ 14 เมษายน 2558 ที่ผ่าน ทาง Microsoft ได้ออก Patch ประจำเดือนสำหรับปิดช่องโหว่หลายๆอย่างของ Windows ออกมา ซึ่งก็เป็นเรื่องปกติ แต่มีช่องโหว่หนึ่งที่มีผลกระทบรุนแรง และเข้าถึงได้ง่ายเหลือเกินก็คือ MS15-034 ซึ่งเป็นช่องโหว่ของ HTTP.sys (HTTP Stack) ซึ่งเป็น kernel ส่วนหนึ่งของ Windows ที่เป็นรุ่นใหม่ๆทั้งหมด (แถมรันโดยใช้สิทธิ์ system ซึ่งเป็นสิทธิ์สูงสุดอีกด้วย) โดยรุ่นที่ได้รับผลกระทบมีดังนี้

  • Windows 7 32bit & 64bit
  • Windows Server 2008 R2 32bit & 64bit
  • Windows 8 32bit & 64bit
  • Windows 8.1 32bit & 64bit
  • Windows Server 2012 32bit & 64bit
  • Windows Server 2012 R2 32bit & 64bit

ทั้งนี้ในประกาศออก Patch จากทาง Microsoft ก็ได้มีการระบุไว้ว่าช่องโหว่นี้มีความรุนแรงถึงขึ้น Remote Code Execution ได้เลยทีเดียว ซึ่ง OMG!!!! มันรุนแรงมาก อีกทั้ง HTTP.sys มันใช้สำหรับจัดการ HTTP ที่ส่งเข้าและส่งออกจาก Web Server ใน Windows นั่นหมายความว่า หากมีการให้บริการ Web อย่าง IIS อยู่ โดนโจมตีด้วยช่องโหว่นี้ก็อาจถูก Hacker ยึดเครื่องไปได้เลยทีเดียว อีกทั้งก็ยังไม่แน่ใจว่า service อื่นๆที่มีการใช้งาน HTTP.sys จะได้รับผลกระทบหรือเปล่าอีกด้วย

(สามารถอ่านรายละเอียดเกี่ยวกับช่องโหว่นี้แบบภาษาไทยได้ที่ https://db.tt/1hiqZr9U โดย CTU Team, บริษัท I-SECURE จำกัด)

แต่ในปัจจุบัน ยังมีการค้นพบเป็นแค่การ Denial-of-Service (DoS) ที่ทำให้ไม่สามารถให้บริการได้ เครื่องแฮงค์ไปเท่านั้น

วิธีการทดสอบ

วิธีการทดสอบง่ายๆ แนะนำให้ใช้เว็บไซด์นี้ครับ https://lab.xpaw.me/MS15-034/

แค่กรอกชื่อเว็บแล้วกด Check จากนั้นก็รอผลการตรวจสอบได้เลยครับ

Screen Shot 2558-04-20 at 07.48.51หรือหากต้องการจะทำเองแบบ telnet ก็ใช้เป็น

# telnet target-website 80

แล้วพิมพ์ว่า

GET / HTTP/1.1
Host: whatever
Range: bytes=0-18446744073709551615

หากได้รับ Response ออกมาเป็น

HTTP/1.1 416 Requested Range Not Satisfiable

แสดงว่าเว็บเซอร์เวอร์นั้นๆมีช่องโหว่ครับ

วิธีการป้องกัน

จากข้อมูลทั้งหมด มันคือเหตุผลให้เรามา Patch ช่องโหว่นี้กันดีกว่า โดยการจะปิดช่องโหว่นี้เราสามารถทำได้ 2 ทางคือ

1. ทำการ update Windows ให้เป็นเวอร์ชั่นล่าสุด

อันนี้ก็คงง่ายสุดไม่ต้องคิดอะไรมาก update Windows ปกติ แล้วทำการ restart Windows ก็เป็นอันเสร็จสิ้นครับ แต่หาก update เฉพาะช่องโหว่นี้ ก็ให้เลือก update KB3042553 ครับ

หากไม่สะดวก update Windows ก็ให้ทำวิธีที่ 2 ครับ

2. คือการปิดการใช้งาน kernel mode caching

โดยเราสามารถทำได้ดังนี้

–    เข้าไปที่ Internet Information Services (IIS) Manager

–    เข้าไปที่ Output Caching

–    ที่ด้านขวากดที่ Edit Feature Settings…

–    ติ๊ก ✓ออกจาก Enable kernel cache

–    จากนั้นทำการ restart IIS Service

Screen Shot 2558-04-20 at 07.54.06

Reference::