マース・チェン&ハンク・チェン&シェン・ハオマ【CODE BLUE SPEAKER インタビュー】
[Speaker interview, English follows]
ブルーチームの新潮流 - 実用的なシンボリックエンジンによる巧妙なマルウェア・ランサムウェアの検知
https://codeblue.jp/2022/talks/?content=talks_5
今回は「ブルーチームの新潮流 - 実用的なシンボリックエンジンによる巧妙なマルウェア・ランサムウェアの検知」の講演を予定されている、マース・チェン(Mars Cheng 写真上)氏と、ハンク・チェン(Hank Chen 写真左)氏に話を伺いました。
お二人とも、産業制御システム向けのセキュリティ・ソリューションを提供するTXOne Networksに在籍。脅威研究チームのメンバーとして活躍されています。来日、講演されるのは前述のお二人ですが、研究にはもう一人、シェン・ハオマ(Sheng-Hao Ma 写真右)氏も名を連ねています。
講演のテーマは、マルウェア解析を効率化するシンボリック実行ツールです。シンボリック実行とは、プログラムの評価手法の1つ。入力に具体的な値を与える代わりに、シンボル(記号)を与えることで検証するというもの。プログラムが実行可能なパスを網羅的に抽出することができ、作業の効率化や均一化に役立ちます。
先行研究が多数ある分野ではありますが、今回の講演では、実効性にフォーカスして開発したというオープンソースのマルウェア解析ツール(TCSA)が紹介されます。
―― 今回、カンファレンスで発表する研究を始めたきっかけを教えてください。
チェン氏:この研究の動機には、頻繁にパターンを更新したり、クラウドに接続したりすることなしにマルウェアの挙動を効率的に検出する新たな方法を見出したいという考えがあります。
この目的のもと、過去の研究において多くの研究を行い、ランサムウェアの検出方法を考えるポイントを把握しました。
そして、多くのマルウェア解析手法やオープンソースツール、文献を調査した結果、シンボリック実行を活用することで、命令ベースのセマンティクスを分解できるマルウェア解析エンジンを構築できることを発見しました。TCSAはランサムウェアだけでなく、カスタマイズしたルールが適用できるマルウェアであれば、どのような種類のマルウェアでも検出することができるのです。 以上が、私たちのエンジンTCSAの誕生秘話です。
―― 研究の過程でどのような点で苦労しましたか?
チェン氏:この研究で出会った2つの苦労についてお話します。1つ目は、シンボリックエンジンの選択です。世の中には優れたシンボリックエンジンが数多く存在しますが、より高速で使い勝手の良いものを探しました。その結果、軽量で高速なvivisectが見つかり、私たちのエンジン構築の青写真に必要な条件をすべて満たすことができました。
2つ目は、エンジンの検証のためのランサムウェアのサンプル収集です。というのも、VirusTotalでランサムウェアとされているマルウェアサンプルの多くは、暗号化の挙動が明確ではないからです。私たちはサンプルにフィルターをかけるさまざま手法を試しました。そして、ついに暗号化の挙動を持つサンプルに対して安定的にフィルタリングする手法を発見したのです。
―― この講演に参加しようと思っている人たちに一言お願いします。
チェン氏:マルウェア解析エンジンTCSAをご紹介します。このエンジンは非常に軽量で、マルウェアの挙動を検出するのに便利です。検出したいマルウェアの挙動に合わせて、ユーザーがルールをカスタマイズすることができます。また、私たちのツールはオープンソースであり、コミュニティからルールの提供やフィードバックによってエンジンを強化していきます。講演を楽しんでいただければ幸いです。
“A New Trend for the Blue Team-Using a Practical Symbolic Engine to Detect Evasive Forms of Malware / Ransomware”
―― How did you get started in the topic that you are presenting?
For this research motivation, we would like to find a new way to efficiently detect malware behavior without frequently updating patterns and connecting to the cloud. Based on this purpose, we performed many studies on past research, and know the point of how to figure out the way to detect ransomware.
After we surveyed most malware analysis methods, open-source tools, and publications, we discovered that we could take advantage of Symbolic Execution to build the malware analysis engine, which can take apart instruction-based semantics. In our idea, TCSA is not only used to detect ransomware but also any kind of malware that the customized rules you built for. So, this is the story of how our engine TCSA was born.
―― What were some of the obstacles in doing this research?
We want to mention two obstacles we met in this research. The first one is choosing a symbolic engine. There are many excellent symbolic engines worldwide, and we are looking for faster and more user-friendly ones. After we took plenty of time to do the experiment and benchmark, we found vivisect, which is lightweight and fast, and it met all the requirements of our blueprint to build our engine.
The second one is collecting ransomware samples for validating our engine. Because of the encryption behavior is not definitely shown in the malware samples labeled as ransomware in VirusTotal, we tried a lot of ways to filter the samples. Finally, we made it. We found a stable way to filter the samples with encryption behavior.
―― What would you say to the people thinking of attending this talk?
We want to introduce you to our malware analysis engine TCSA, which is really lightweight and useful to detect malware behaviors.
Users can customize the rule for any malware behaviors they want to detect. Also, our tool is open-source, and we kindly invited the community to contribute their rules and give us feedback to enhance the engine.
I hope you enjoy the talk!
世界トップクラスの専門家による情報セキュリティ国際会議「CODE BLUE(コードブルー)」