サーベイ それは悠久の流れ

This blog is for my knowledge

スマホ Application

Required

free will

Kali setup memo

VM

VirtualBox用のISOをdownload

VMの環境設定

ゲストスクリーンサイズを自動化

NATネットワークを192.168.0.0/24

Oracle Vm Extension Packをinstall

kali一般設定

クリップボードの共有とドラッグドロップを双方向

メモリは6144MBぐらいである程度快適

プロセッサ数を2、使用制限は100%、ビデオメモリは128MB、3Dアクセラレーションを有効化

ストレージはVMDK80GBくらいでいいかな

オーディオ出力有効化

ネットワークはアダプター1NATだけ

ケーブル接続有効化

共有フォルダは各自

Kali内の設定

theme

アプリケーション kali-X

カーソル Adwita

icon Vibrancy-kali-Dark

Gnome shell Kali-X

Caps-lock -> Ctrl

Tweaks keyboard Ctrl position CapslockをCtrlとして扱う

Other

.vimrc favorite

拡張機能

  • applications menu

  • clipboard indicator

  • Dash to dock

  • Dynamic top bar

  • lmpatience

  • Places status indicator

  • Proxy switcher

  • User theme

  • Workspace indicator

    tools

  • Eternalblue-Doublepulsar-Metasploit-master

  • zambie
  • Striker
  • Empire
  • angryFuzzer
  • SocialFish
  • BlackWidow
  • Sn1per
  • PRET
  • machine_learning_security
  • kickthemout
  • basket

writeup:Anatomy_malware_seccan_WS_2018

感想

「新たな知識を得れた」というより「知識を得れることができる知識を大量に得れた」です! ずっと受けてみたかった講義を東京∧交通費支給でよかったです><

下の方には当日までの事前課題のメモです

勉強会当日

当日は大手町で迷ったくらい

内容

  • 軽く自己紹介タイム

  • 事前課題の復習と良かった点

  • 最近の有名なインシデント

  • 基礎知識のスライドたくさん

  • unpackingや暗号方式のスライド

  • idb渡されて解析

  • COM interface

  • idbのBOT Commandの解析

  • 最後にまとめのコメント

流れはこんな感じでした

スライドの内容に関しては、二次配布等は禁止っぽいので↓に適当にメモしたものを載せておきます

当日適当にメモ

Botnetを落とすことで世界のためになるね

malware analysis セキュリティを意識 解析する本人

検体を渡す理由

効率的な解析方法

コメント 日本語MSゴシック

シンボリック実行

デジタル署名に基づいて信頼できると判断

PEファイルの最後にデジタル署名

PEファイルは後ろになんでも付与できる

DLL

DLLは関数の集まり

DLLがloaded,unloadedされたときに動作

IDAのピンクが連続している時はDLLの関数に飛ぶ

VM

仮想メモリ

User space

Kernel space 2GBずつ割り当てられているように見えるが帯のように一体

PE in VM

headerをパースして少し余裕をもたせて展開

IDAはVM上に展開されたような状態でPEをパース

IDAの?は余裕もたせたものの情報が無い時

Process and Thread

CPUでいくつかの

呼び出し規約

Wikipedia 見る

win APIとかだとcallしたあとに次の動作に移るが、callは残る

リバースエンジニアリングバイブルに書いてあるような

__stdcall

__fastcall

__cdecl

スタックで渡しかレジスタかの違い

malware unpack

https://www.jpcert.or.jp/present/2014/20140424ssmjp.pdf

reference

https://software.intel.com/en-us/articles/intel-sdm

winAPI

winAPI

MSDN lib

offline can use MSDN doc

ググる

API

文字列

エンコード文字列

main function

IDA free とかはmain Function を探す

Ctrl Eでexport

startからMain Function

six sense

演習

time is money

Talk with IDA

「IDAと話せない奴はクズだ!!」

ELIRKS解析

COM interface

オブジェクト指向っぽい書き方ができる

winAPI

CoInitializeEx

CoCreateInstance

最後

AIや機械学習で 静的解析の死後

勉強会に行くまで

久しぶりにサイボウズLive開いたらいっぱいメール届いてて適当に開いたらセキュキャンの全国大会のマルウェア講義するの?行く!となりました。でよく見たら東京まで交通費支給でプラスαあるとのことで応募資料作成しました。

応募資料(公開できる範囲で)

名称

EternalRomance,TROJ_ETERNALROM.A,CVE-2017-0145 SHA-256 b99c3cc1acbb085c9a895a8c3510f6daaf31f0d2d9ccb8477c7fb7119376f57b

EternalRomanceの解析出来たらいいのにニャ~

https://hackmd.io/6mDawJL6TtexxNo13zYtIw

被害

EternalRomance単体での感染や被害は確認できなかったため、BadRabbitの被害とします。 ランサムウェアであるWannaCryやBadRabbitにも使用され被害は甚大ですが特にネットで有名だったのが、アイカ工業のカタログを閲覧したPCからの感染、コンテンツの改竄です。改竄によりランサムウェアの拡散に悪用されたそうです。 WannaCryやBadRabbitの被害は調べたところ、サイトにより違いました。また、EternalRomanceはpetyaにコードが似ているや別のマルウェアであるなどの解析レポートによって意見の相違が多く見受けられました。

選んだ理由

最初は、初めて自分の中で綺麗にRootが取れたexploitのEternalblue-Doublepulsar-Metasploitを調べようとしたのですが、MetasploitでEternalblueとDoublepulsarを読み込んでいたrubyだけでした。 EternalBlueとDoublepulsarを解析できる技術がなかったです EXPLOITDATABASEで2018-02-05にpublishされたmetasploitのSMB Remote code Executionがあったことと、 EternalRomanceはWannaCryやBadRabbitにも使われているのにサイトでどのような動作が行われるのかあまり書いておらず気になっていたのでこのマルウェアにしました。

事前課題

セキュリティ・キャンプ全国大会2015でのマルウエア分析講義(2015-09-10)

https://www.jpcert.or.jp/magazine/acreport-seccamp.html

これのmalware_sample3.idbを見てコメントとか

あとはURLのPDFみて「なるほどな~」って言います

事前課題なんですが提出期限まで別の検体を間違って見ていて、課題のidbは2時間くらいしか見ていませんでした。最初からみていってcallで飛んでいるところを見ていくとOSのタイプやdelete(typoしてる...)みたいなコードがあったのでFunctionをNでrenameした感じです。

IDAも最近は全く触っておらずショートカットもググりながらのレベルでした。あと、IDA freeの7.0が使えなくて5.0を使うことになったのがfontや見た目の面で辛かったですね

f:id:melancholy_security:20180325174413p:plain

注意喚起!SocialFishを使ったフィッシングサイト

docs.google.com

SocialFishを使うことで、巧妙なフィッシングサイトを作成することができ、今後流行りそうなのでブログに書いておきます。

SocialFish

github.com

www.youtube.com

twitter.com

google URL shortnerを使えば 〈ランダムな文字〉.goo.gl みたいになりURLでの判断が非常に困難になる。サイトにアクセスした時は.ngrok.ioとなって判断が出来る。 だが、フィッシングサイトにアクセスした時に悪意のあるデータがDownloadがされるようなもの例えば有名なマルウェア()

Ngrokを使ってFacebookGoogleのHTMLとlogin.phpを使ったフィッシングサイトを作ることが出来ます。 一見、正規のサイトに見えますが、Ngrokを使用しているのでフィッシングサイトのURLは https://[0-9a-z]*.ngrok.io となります。

Ngrok (エングロック)

ローカル環境上で実行しているアプリケーション(http/https/tcp)をインターネットからアクセスできるようにするサービス

goo.gl

他にフィッシングサイトを作成できるtoolはSET,weeman,など色々あるが,SocialFishがいいところはGoogle URL shortenerを使用できる点です SETでフィッシングサイトを作成すると、KaliなどのIPがURLの部分に表示されるのと、URL shortnerが使えません google URL shortener で検索をすると省略されていないURLが表示されます

対策

普段からURLを注意深く見る

少しでも不審なサイト(URL省略等)にアクセスする時は先にaguseを使ってから安全かを確認する

www.aguse.jp

おまけ

f:id:melancholy_security:20180319040142p:plain f:id:melancholy_security:20180319040155p:plain