In-Depth

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

ที่มาที่ไป

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

การโจมตีนี้ไม่ใช่เรื่องไกลตัวท่าน เพราะเว็บไซต์ของโรงเรียนแห่งหนึ่งในประเทศไทยซึ่งมีข้อมูลผู้เข้าชม 6,000 - 12,000 ครั้ง/เดือน ได้ถูกแฮกและใช้เป็นแหล่งแพร่กระจายมัลแวร์ในแคมเปญนี้เรียบร้อยแล้วตั้งแต่เมื่อเดือน ม.ค.68 เป็นต้นมา


ภาพที่ 1 เว็บไซต์โรงเรียนแห่งหนึ่งในไทย ถูกแฮกและฝังโค๊ด JavaScript ที่เป็นอันตรายเอาไว้

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

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


ภาพที่ 2 หน้าเว็บเพจที่แจ้งให้เราอัพเดตเว็บบราวเซอร์ (ปลอม)

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

อย่างไรก็ตาม ในบางกรณีไฟล์ที่ถูกดาวน์โหลดมานี้ อาจจะเป็นไฟล์ ZIP (.zip) หรือ Windows Installer (.msi) ก็ได้เช่นเดียวกัน โดยที่ผู้โจมตีก็มีความใส่ใจพอที่จะกำหนดให้หน้าเว็บแสดงรายละเอียดสำหรับการติดตั้งซึ่งสอดคล้องกับไฟล์แต่ละประเภทในข้างต้น


ภาพที่ 3 ไฟล์อันตรายที่ถูกดาวน์โหลดจะสอดคล้องกับอุปกรณ์ที่เหยื่อใช้งาน

##ไฟล์สคริปต์ JavaScript
ไฟล์สคริปต์ (.js) ที่ถูกดาวน์โหลดมานี้ มีการเข้ารหัส (Obfuscate) เอาไว้ด้วยกันถึง 4 เลเยอร์ และเมื่อมันถูก Execute ก็จะทำการเรียกใช้งาน PowerShell เพื่อดาวน์โหลดและติดตั้งไฟล์มัลแวร์ซึ่งมีขีดความสามารถในการขโมยข้อมูลที่สำคัญจากเครื่องคอมพิวเตอร์ในท้ายที่สุด


ภาพที่ 4 เลเยอร์การป้องกันของไฟล์สคริปต์ (.js)

เราลองมาดูการทำงานของมันกันครับ

###เลเยอร์ที่หนึ่ง - Charcode
หากเราลองเปิดไฟล์สคริปต์ (.js) นี้ด้วยโปรแกรม Text Editor เราจะเห็นแต่ข้อมูลคอมเม้นท์ (Comment) ที่ผู้โจมตีจงใจใส่เอาไว้เพื่อซ่อนโค๊ดอันตรายเอาไว้ โดยโค๊ดที่พบในเลเยอร์นี้ก็คือ JavaScript ที่ใช้เทคนิคการแทนที่ตัวแปรด้วย Charcode (Character Code) โดยใช้เมธอด (Method) String.fromCharCode ในการแปลงให้กลับมาเป็นค่า String ก่อนที่จะทำการ Execute ด้วย eval


ภาพที่ 5 เลเยอร์ที่หนึ่ง เป็นโค๊ด JavaScript ที่ใช้เทคนิค Charcode และการแทนที่ตัวแปร

###เลเยอร์ที่สอง - Charcode คอมโบกับ Subtraction
โค๊ดในเลเยอร์ที่สองนี้ ยังคงเป็น JavaScript ที่มีการใช้เทคนิค Charcode อยู่เหมือนเดิม แต่มีการเพิ่มความซับซ้อนเข้ามาโดยใช้การหักลบค่า (Subtraction) กล่าวคือ ค่า Charcode ที่ปรากฏในเลเยอร์นี้ถูกกำหนดค่าเอาไว้ประมาณ 900 ขึ้นไป ทำให้เมื่อถูกแปลงค่าออกมาแล้วจะไม่สามารถอ่านค่าหรือตีความเป็น String ตามปกติได้ โดยผู้โจมตีได้สร้างฟังก์ชันขึ้นมาเพื่อใช้ในการหักลบค่า Charcode แต่ละตัวด้วยค่า 853 ก่อนที่จะใส่เอาไว้ใน Array และทำการ Execute ผ่าน WScript.Shell Object โดยผลลัพธ์ที่ได้คือสคริปต์ PowerShell ที่จะถูกเรียกใช้งานเป็นลำดับต่อไป


ภาพที่ 6 เลเยอร์ที่สอง เป็นโค๊ด JavaScript ที่ใช้เทคนิค Charcode ร่วมกับ Subtraction

###เลเยอร์ที่สาม - PowerShell Decryptor
โค๊ดในเลเยอร์ที่สามเป็นสคริปต์ PowerShell ที่มีฟังก์ชันสำหรับการถอดรหัส (Decryption) ด้วย AES (Advanced Encryption Standard) ซึ่งถูกใช้ในการถอดรหัสข้อมูลค่า Hex ที่เก็บเอาไว้ในตัวแปร โดยใช้ค่า Key ที่ถูกกำหนดเอาไว้อยู่ภายในสคริปต์ และค่า IV เป็นค่า Null ขนาด 16 ไบต์ ซึ่งผลลัพธ์ที่ได้ก็คือสคริปต์ PowerShell อีกเช่นเดียวกัน


ภาพที่ 7 เลเยอร์ที่สาม เป็นสคริปต์ PowerShell ที่ทำหน้าที่ในการถอดรหัสข้อมูลซึ่งก็คือโค๊ดในเลเยอร์ที่สี่ซึ่งเป็นเลเยอร์สุดท้าย

###เลเยอร์ที่สี่ - PowerShell Downloader
สคริปต์ PowerShell ในเลเยอร์ที่สี่นี้ ทำหน้าที่ในการดาวน์โหลดไฟล์ ZIP ชื่อ A11Canary.zip จาก URL คือ hxxps://twitss[.]com/wp-content/uploads/2023/03/A11Canary.zip ก่อนที่จะทำการ Extract ไว้ภายใต้โฟลเดอร์ %AppData% และทำการ Execute ไฟล์อันตรายที่อยู่ในโฟลเดอร์ดังกล่าวโดยอัตโนมัติ

ทั้งนี้ twitss[.]com ไม่ใช่เว็บไซต์ทีถูกสร้างโดยผู้โจมตี แต่เป็นเว็บไซต์ที่ถูกแฮกมาเช่นเดียวกัน และถูกนำมาใช้ในการเก็บไฟล์มัลแวร์


ภาพที่ 8 เลเยอร์ที่สี่ เป็นสคริปต์ PowerShell ซึ่งทำหน้าที่ในการดาวน์โหลด และติดตั้งไฟล์มัลแวร์โดยอัตโนมัติ

เป้าหมายที่แท้จริง - Lumma Stealer

ภายในไฟล์ A11Canary.zip จะมีไฟล์ประเภท Portable Executable (PE) ทั้ง .exe และ .dll อยู่จำนวนมาก แต่มีเพียงไฟล์เดียวที่ผู้โจมตีต้องการ Execute คือไฟล์ชื่อ A11Canary.exe แล้วทุกท่านสงสัยหรือไม่ว่าผู้โจมตีจะ Execute ไฟล์เป้าหมายที่ต้องการได้อย่างไร?

คำตอบนั้นง่ายมาก! หากท่านย้อนไปดูสคริปต์ PowerShell ในเลเยอร์ที่สี่ จะพบว่า ผู้โจมตีกำหนดให้สคริปต์ทำการเรียงลำดับไฟล์ตาม “ชื่อ” ก่อนที่จะสั่งให้ Execute ไฟล์ที่อยู่ในลำดับที่หนึ่ง ซึ่งผลลัพธ์คือไฟล์ A11Canary.exe จะถูก Execute เพียงรายการเดียวเสมอ


ภาพที่ 9 รายละเอียดของไฟล์ที่บรรจุอยู่ภายในไฟล์ A11Canary.zip

อย่างไรก็ตาม ไฟล์ A11Canary.exe ไม่ใช่ไฟล์อันตรายแต่อย่างใด โดยแท้ที่จริงแล้วเป็นไฟล์ Java Compiler Executable จาก Java Development Kit (JDK) แต่ถูกผู้โจมตีนำมาใช้งานในเทคนิค DLL Side-loading ซึ่งมีหลักการทำงานคือ เมื่อไฟล์ A11Canary.exe ถูก Execute ก็จะทำการโหลดใช้งานไฟล์ jli.dll ที่อยู่ภายในโฟลเดอร์เดียวกันโดยอัตโนมัติ

ไฟล์ DLL ดังกล่าว เป็นมัลแวร์ Lumma Stealer ซึ่งมีขีดความสามารถขโมยข้อมูลจากเครื่องคอมพิวเตอร์ ยกตัวอย่างเช่น ข้อมูล Cryptocurrency Wallet, ข้อมูลบัญชีผู้ใช้งานและรหัสผ่านที่บันทึกไว้ในเว็บบราวเซอร์, รวมไปถึงข้อมูลรหัสผ่านต่าง ๆ ของระบบปฏิบัติการบนเครื่องคอมพิวเตอร์ เป็นต้น

สรุป

เป็นที่ทราบกันดีว่าเว็บไซต์โรงเรียนต่าง ๆ ในประเทศไทย มักจะถูกแฮกและใช้เป็นเครื่องมือของแฮกเกอร์มาอย่างยาวนาน แม้กระทั่งในครั้งนี้ เราก็เห็นตัวอย่างกันแล้วว่า เว็บไซต์โรงเรียนที่มีผู้เข้าชมหลักหมื่นต่อเดือน ถูกนำมาใช้เป็นแหล่งแพร่กระจายมัลแวร์ในแคมเปญการโจมตีระดับโลกโดยกลุ่มแฮกเกอร์ TA2726 และ TA2727

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

ขอบคุณทุกท่านที่ทนอ่านจนจบ หวังว่าจะเป็นประโยชน์บ้างไม่มากก็น้อยครับ

ทุกท่านสามารถตรวจสอบข้อมูล Indicators of Compromise (IOCs) รวมถึง Sigma Rule เพื่อใช้ในการตรวจจับภัยคุกคามนี้ได้จาก ที่มา ด้านล่างนี้ครับ

ที่มา - FatzQatz’s Medium Blog Post, Sigma Rule

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

ถ้าตีกรอบว่าเป็นกลุ่ม รร .. ทุก รร มี ความเสี่ยง ใกล้เคียงกัน , หรือ รร รัฐ มีสูงกว่า ?

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