---
# System prepended metadata

title: AIS3 2023 M8

---

[toc]
# 討論的組題
跟惡意程式分類器相關


# 目標
## 對抗式攻擊
- 對抗式攻擊
  - 有哪些廣泛使用的 model?
  - 是否有人注入 backdoor 到，惡意程式**公開樣本資料有沒有受到污染的的訓練資料**?
  - 如何污染 virustotal?
  - 攻擊的演算法，我們可能很難自己想
    - 要去 survey 相關的算法 (會受到情境影響)

## 新的攻擊手法(惡意程式的)的反應研究
- 惡意程式 未知樣本問題
  - 如何改善分類器對未知樣本的學習效果?
  - 如何更快的去對惡意程式取相關特徵?
  - 比方說有很多混淆的情況機器學習不見得辨識
- 惡意程式分類器
  - 是不是找新的面向的惡意程式 (但是要夠多的樣本)
  - 如果做太常見的，可能沒有太多新穎性
  - 不一定要做分類器，但是我們可以在特定的環境做改善
- Trojan Source: Invisible Vulnerabilities
  - 感覺是一種**混淆的技術**
- 比較新的攻擊手法，沒有被太多人做偵測的
  - 換湯的意思
  - **最近一年出來的攻擊手法，要怎麼去偵測**
    - 要去 survey 新的惡意程式手法

## C2/惡意攻擊的流量相關
- Flow Interaction Graph Analysis
  - 可能需要自己**建設 sandbox** 要建立網路環境
  - 有沒有人熟悉 **cloud**?
- Automatic Protocol Reverse Engineering
  - 用來從 binary 分析 C2 的溝通協議
  - 工具 https://github.com/ron4548/PISE
  - 基於符號執行(代表會有路徑爆炸的問題)
- C2 相關的 協議有哪些新的手法
  - 沒有人討論過，但是可以做 C2 的協議 
    - 比方說 IRC, HTTP 當成 C2 都是很常見的
  - 我們要怎麼有效的做建模，去檢測他?
- 用網路分類器 C2 或是 打 exploit 的 pattern
- 要怎麼偵測別人打 0day 的流量
  - 比方說有人在打 ASLR 可能會一直送封包過去等等
  - ids/ips 沒有 signture 的情況 要怎麼檢測相關封包

## 結論
我們認為
- 新的攻擊手法(惡意程式的)的反應研究 (最簡單)
- C2/惡意攻擊的流量相關 (可以做，但是需要架設環境) 

對抗式攻擊因為比較理論性質，有點難做成專題?

要怎麼做的深是一個問題

# 深度的問題
我們找到的惡意軟體怎麼樣
- 應該說我們針對特定的混淆技術而不是單獨的惡意程式做分析之類
- 應該不是看單個惡意程式

單純對惡意程式的分析報告 vs 通用的分析工具
- 後者可能比較有深度?
- 通用的程度?

關於深度的其他想法
- 現有的方式上，自己建立一個手法，再去攻擊這個手法
  - 發明新的矛盾的感覺
  - 這邊的問題是，自己的新手法是否是**客觀**的?
- 如果找公認比較難解，或是比較新的混淆手法
  - **新的**因為大家**還沒有開始做，可能比較容易**
  - 大家公認難解的，因為**專家都解不出來**

你做的東西感覺別人感覺要做很久
- 儘早決定目標
- 太晚決定目標會沒時間做

你用別人覺得很炫的技術
- 同學覺得很炫，評審會覺得很炫嗎?

這個技術如果能夠應用，也許可以做更多討論

# 分工
- 工作要切明確
[專題 repo](https://github.com/r888800009/2023_AIS3_Project)
[簡報](https://docs.google.com/presentation/d/1JYBklAehYwZ1D3f7ljX4tIV2PV4bOOII/edit#slide=id.p1)

**分析某種 target**
- 透過流量分析
- 透過動態分析或靜態分析
- 這幾個方面如何取特徵?
  - 靜態分析 asm2vec
  - 流量分析 log ??? NLP? encoder???
  - 動態分析 除錯的技術等等

## 兩個題目所需的技術
- 應該大家都會寫 python?
- scikit learn 或其他 ML 框架? 
- 收集資料集的能力

### 新的攻擊手法(惡意程式的)的反應研究 (最簡單)
- binary 分析框架的使用
- 要了解各種作業系統常見的動態分析技術
- 情資相關的東西? 爬蟲?
- 混淆相關是不是要用到 Angr, z3?
- 這邊要 survey 新的手法，要看一些 conference

### C2/惡意攻擊的流量相關 (可以做，但是需要架設環境) 
- 雲端，虛擬化一定要的，沙箱, (aws, azure, gcp, 等等要會寫 code as infrastructure) 
  - 比較現實的點，要有帳號
  - AIS3 會提供這個東西嗎(?, r888800009 覺得不太可能會提供)
- 錄製封包的工具 (不同的惡意程式, 要自動化)
- 對網路要比較熟
- 資料集, 自己做或收集

## 明天的分工
做 新的攻擊手法(惡意程式的)的反應研究
- 因為明確, 如果做下面那個需要有雲端帳號建立環境

順序
- survey 新的手法 conference (第一優先)
  1. 可以先廣一點，找近幾年新的手法，**是在哪些 target**
  2. 分析這個手法會有哪些 tech stack
  3. **這個步驟比較重要，會卡到後面我們研究的東西**
- 另外也可以問問看助教，對我們這兩個方向的看法

## 整理

- [Bypass Antivirus Dynamic Analysis](https://packetstormsecurity.com/files/127993/Bypass-Antivirus-Dynamic-Analysis.html)
  - 這個好像是不同篇 XDD，原本的應該是[這個](https://typhooncon.com/blog/conitems/bypass-antivirus-dynamic-analysis/)，不確定有沒有公開
- script 類型
  - [Detecting PowerShell Obfuscation Techniques using Natural Language Processing](https://www.diva-portal.org/smash/get/diva2:1727824/FULLTEXT01.pdf)
  - [rootcon A new secret stash for fileless malware](https://www.rootcon.org/html/archives/rc16#stash_for_malware)
  - [PyLoose: Python-based fileless malware targets cloud workloads to deliver cryptominer | Wiz Blog](https://www.wiz.io/blog/pyloose-first-python-based-fileless-attack-on-cloud-workloads)
- 一些 windows 的攻擊面
  - [HITB the ransomware protection full of hole](https://conference.hitb.org/hitbsecconf2022sin/materials/D2T1%20-%20The%20Ransomware%20Protection%20Full%20Of%20Holes%20-%20Soya%20Aoyama.pdf)
  - [power-pwn/docs at main · mbrg/power-pwn](https://github.com/mbrg/power-pwn/tree/main)
    - power automate 以前應該是 Microsoft Flow
  - [Omri Misgav - Running Rootkits Like A Nation-State Hacker](https://forum.defcon.org/node/241940)
- 檢測技術
  - [HITB EDR Evasion Primer](https://conference.hitb.org/hitbsecconf2022sin/materials/D1T1%20-%20EDR%20Evasion%20Primer%20for%20Red%20Teamers%20-%20Karsten%20Nohl%20&%20Jorge%20Gimenez.pdf)
    - EDR 規避技術
  - [Michael Bargury - No-Code Malware: Windows 11 At Your Service](https://forum.defcon.org/node/241932)
    - [pdf](https://media.defcon.org/DEF%20CON%2030/DEF%20CON%2030%20presentations/Michael%20Bargury%20-%20No-Code%20Malware%20Windows%2011%20At%20Your%20Service.pdf)
  - [HITB Best Practices For Simulating Execution in Malicious Text Detection](https://conference.hitb.org/hitbsecconf2022sin/materials/D2%20COMMSEC%20-%20Best%20Practices%20For%20Simulating%20Execution%20in%20Malicious%20Text%20Detection%20-%20Shuo%20Wang%20&%20Yi%20Sun.pdf)
  - [rootcon Alternative ways to detect mimikatz](https://www.rootcon.org/html/archives/rc16#mimikatz)
  - [Kyle Avery - Avoiding Memory Scanners: Customizing Malware to Evade YARA, PE-sieve, and More](https://forum.defcon.org/node/241824)
    - [pdf](https://media.defcon.org/DEF%20CON%2030/DEF%20CON%2030%20presentations/Kyle%20Avery%20-%20Avoiding%20Memory%20Scanners%20Customizing%20Malware%20to%20Evade%20YARA%20PE-sieve%20and%20More.pdf)
  - Trojan Source: Invisible Vulnerabilities
https://www.usenix.org/system/files/sec23fall-prepub-151-boucher.pdf
    - 規避的手法之類的
- 一些新奇的面向
  - [WormGPT](https://slashnext.com/blog/wormgpt-the-generative-ai-tool-cybercriminals-are-using-to-launch-business-email-compromise-attacks/)
- Worm 的面向
- 近期的殭屍網路
- 散播方式

# 結論 7/25
~~找新的惡意程式~~
~~- 然後分析相關 APT 族群等等~~
~~- 當中看能不能延伸出一些工具~~
~~- 看能不能發現新的攻擊手法，和檢測技術~~
~~- mitre att&ck matrix~~
可能現未知會花太多時間，不太建議

# 7/26
抓這個
  - [HITB EDR Evasion Primer](https://conference.hitb.org/hitbsecconf2022sin/materials/D1T1%20-%20EDR%20Evasion%20Primer%20for%20Red%20Teamers%20-%20Karsten%20Nohl%20&%20Jorge%20Gimenez.pdf)
    - EDR 規避技術
  - [Kyle Avery - Avoiding Memory Scanners: Customizing Malware to Evade YARA, PE-sieve, and More](https://forum.defcon.org/node/241824)
    - 先前的相關工作
      - [JLospinoso/gargoyle: A memory scanning evasion technique](https://github.com/JLospinoso/gargoyle)
    - [phra/PEzor: Open-Source Shellcode & PE Packer](https://github.com/phra/PEzor)
    - [Bypassing antivirus detection: old-school malware, new tricks](https://arxiv.org/pdf/2305.04149.pdf) (不過這篇還沒有同儕審查)
      - [efchatz/bypassing-av-detection: Bypassing antivirus detection: old-school malware, new tricks](https://github.com/efchatz/bypassing-av-detection)
      - [Defense Evasion, Tactic TA0005 - Enterprise | MITRE ATT&CK®](https://attack.mitre.org/tactics/TA0005/)

檢測技術
- [Detecting Windows AMSI Bypass Techniques](https://www.trendmicro.com/pl_pl/research/22/l/detecting-windows-amsi-bypass-techniques.html)

評估的工具
- [hasherezade/pe-sieve: Scans a given process. Recognizes and dumps a variety of potentially malicious implants (replaced/injected PEs, shellcodes, hooks, in-memory patches).](https://github.com/hasherezade/pe-sieve)

free AV
- Avast
- AVG
- Avira
- MS Defender
- OpenEDR


# 7/27
- 技術
  - https://github.com/lief-project/LIEF
  - malware slice code

- 大概念
  - 題目: 基於函數搜尋的逆向工程，勒索軟體演算法識別
  - 動機
  - 目的
    - 為了讓惡意程式分析更快了解內容
      - 分析 static linked 的 binary 未知函數 **(1)**
        - 先前類似的研究[[1]](https://dl.acm.org/doi/pdf/10.1145/2939672.2939719)，但因為 NLP 領域採用深度學習方式有不錯的成果，在逆向工程相關領域借鏡類似方式[[1]](https://www.ndss-symposium.org/ndss-paper/vulhawk-cross-architecture-vulnerability-detection-with-entropy-based-binary-code-search/)[[2]](https://github.com/ycachy/Codee)[[3]](https://github.com/Lancern/asm2vec)[[4]](https://github.com/Yunlongs/Gemini)[[5]](https://github.com/asw0316/binshot)[[6]](https://arxiv.org/abs/2211.01144)[[7]](https://github.com/palmtreemodel/PalmTree)
          - 這邊看起來有人
        - 針對加密演算法的 related work
        - 先挑好弄的模型，如果有時間我們在評估每個模型
      - 評估 function search 對勒索軟體的加密演算法的效果 (2)
        - 比方說奇形怪狀的加密演算法
        - 這個部分需要收集一些樣本，可以找別人寫好報告的
      - 對每個程式碼片段做 mitre attack 的分類 (需要資料集)
        - 如果可以的話，可以採用自動提取 label [[1]](https://dl.acm.org/doi/epdf/10.1145/3594553)
      - 識別惡意程式背後可能的 tech stack
        - 比方說識別 cobalt strike, metasploit
          - 因為惡意程式可能會採用現有的 攻擊模塊 [?這邊需要參考]，識別第三方 lib 或許是有用的方法，對於識別 lib function 的研究有 [[1]](https://dl.acm.org/doi/pdf/10.1145/3524842.3528442)
        - 現有的研究，大多 malware 家族的分類，感覺有很多相關的研究 [[1]](https://dl.acm.org/doi/abs/10.1145/3571662.3571676)[[2]](https://arxiv.org/pdf/2307.11032.pdf)[[3]](https://dl.acm.org/doi/pdf/10.1145/3488932.3517393)
- 實作
  - Cryptographic Function Detection 通常會檢查哪些 lib?


剛剛問寬寬，他應該覺得這類型的是可以做的，不過要先看現有的研究做了什麼相關的研究 oalieno 有做一些工具，也可以問他，雖然惡意程式可能會做一些混淆，可以先從簡單的程式 function 去做，這種分析一般會透過 trace 的方式，解決混淆的問題，不過加密演算法可能比較少會加入花指令，因為怕影響演算法結果，可能比較不會去加這些東西，可能有 packer 的部分要去解，喔還有可能看能不能用動態的方法

雜項不知道有沒有用
- [JARV1S: Phenotype Clone Search for Rapid Zero-Day Malware Triage and Functional Decomposition for Cyber Threat Intelligence | IEEE Conference Publication | IEEE Xplore](https://ieeexplore.ieee.org/document/9811078)

[](https://)
# 7/28
## related works


7/29


# 資源

惡意程式資料庫
* https://bazaar.abuse.ch/browse/
* https://das-malwerk.herokuapp.com/
* https://www.vx-underground.org/#E:/root
