親ページ:マルウェア解析に必要な素養
以降の章を読むために理解しておきたい用語を挙げていく。英語表記を併記しているのは覚えてほしいからで、ググる時に思い出して欲しい。
TODO:("アーティファクト フォレンジック"でググると良いかも)
TODO:章にしたほうが良いのかな?
攻撃ベクター:
TODO
特に「特定の相手に狙いを定め、その相手に適合した方法・手段を適宜用いて侵入・潜伏し、数か月から数年にわたって継続するサイバー攻撃」(独立行政法人 情報通信研究機構(NICT)のサイバー攻撃対策総合研究センター(CYREC))のことをAPT攻撃(Advanced persistent threat)と呼ばれる。
Windowsのデバッグ情報ファイル(シンボルファイル)。
TODO
2016年の主要な攻撃キャンペーン:
2017年の主要な攻撃キャンペーン:
2018年の種よおうな攻撃キャンペーン:
サイバー攻撃レベルの攻撃キャンペーン:
日本語訳がベンダーによって不定(個人的には「侵入(の)痕跡」で良いんじゃないかなと思う)。システムにセキュリティー侵害があったことを示す痕跡のことで、検体のファイル名・ハッシュ値、変更されたレジストリキー、通信先のドメイン・IPアドレスなどの情報が入る。
cf. アーティファクト(フォレンジック用語)
IOCはマルウェア解析ブログの記事の末尾で提示されることが多い。
例)nao_sec: Survey of "ngay campaign" (2017/12/11)
TODO
インターネットサービスプロバイダのこと。インターネット接続を提供する企業で、一般にはプロバイダと呼ばれている。
プロバイダーには通信の秘密を守る義務があるが、それに触れない範囲でサイバー攻撃を対策する動きあり。
TODO
攻撃者や「セキュリティエンジニア」ってそこまでDNS知らなさそうだし、DNSのことよく知ってる人の方が攻撃者を出し抜ける感ある
— しゅーと (@shutingrz) 2017年6月25日
TODO
DNSSECはクソ:
TODO:概略。
ダークネットと混同されすぎて区別する必要もないかも。
組織に割り当てられたグローバルIPアドレス領域のうち未使用部分を指す言葉。未使用のアドレスにパケットが飛んで来るのはおかしいよねという前提。
未使用のグローバルアドレスにセンサーを設置し、外部からの攻撃を観測することが行われている。例えばNICTのnicter(プレスリリース、NICTERWEB 2.0)。
闇市場。クレジットカード情報、アカウントなどの個人情報、違法薬物の売買、マネーロンダリング(資金洗浄)がされている模様。
TODO:話が逸れ始めたぞ…
TODO
TODO
TODO
TODO:疑問点
意味が複数ある。
データから、ヘッダないしはメタ情報を除いた部分というくらいの意味合い。
最小限の定義をするならば、シェルを獲得するためのコード(機械語コード、アセンブリ、マクロコード、…)のこと。
Linuxの最小のシェルコードはC言語で書き下すと sys_execve("/bin/sh", 0, 0);
のような形をしている。これはLinuxのexecv*システムコールを直接呼び出す。
英語での名称は要暗記。マルウェアの文脈では、多くの任意コードはマシンコードの羅列である。Webアプリケーションでの任意コード実行では、高級言語のコードが実行されるが、任意コード実行ではなくコードインジェクションと呼ばれがち(他にも例外あり)。
上述の通り。
SQL文に対するインジェクションは、SQL Injection(SQLi)と言われる。
Webページに対するJavaScriptコードの挿入は、クロスサイトスクリプティング(XSS)と呼ばれる。
海外だとRCEと書かれることが多い。(Webアプリケーションの)脆弱性により外部リソースがダウンロードされ、コードとして実行される。
読み:ぜいじゃくせい。
国際的に使用されている脆弱性の識別番号。CVEを振るのはMITREだけでは無い。
CVE採番機関CNAの今/ウェブプライバシー保護技術の比較【海外セキュリティ】 - INTERNET Watch ※必読
「CVSS」とはそもそも何か? 脆弱性対応の優先順位付けではない!?【海外セキュリティ】 - INTERNET Watch (2019/1/9)
「人々がCVSSに対して本当に期待しているもの(特に脆弱性対応の優先順位付け)」をCVSSのコミュニティが提供できていないことが問題であるというのがCERT/CCが主張したいことなわけです。
サービス、アプリケーションの脆弱性を利用した攻撃のこと。エクスプロイトコードはそれを実現するためのスクリプト(C言語で書かれることもある)。
前述のシェルコードはこのエクスプロイトコードに含まれて書かれる。
ホワイトハッカーは、Windowsでエクスプロイトを成功したときに電卓(calc.exe)を起動することが多い。
TODO:(Wikipediaにある説明で十分な気も…)
TODO:(Wikipediaにある説明で十分な気も…)
使い分けのポイント:
(権限昇格の英語(のスペル)が覚えにくくないすか。)
一般的なOSでは、ユーザーまたはグループの権限レベルを管理し、レベルごとにシステムに可能な操作を制限している。権限昇格とは(Exploit対象の)現在のユーザーの権限レベルを昇格させることをいう。昇格先として、Linuxではroot、WindowsではAdministratorsやSYSTEMがある。
ホワイトハッカーは、権限昇格を実現すると、rootのターミナル(rootを示すプロンプトが出ている状態)をスクショして見せびらかすことが多い。
権限昇格の実際については、#権限昇格 を参照されたし。
コードを読みにくくすること。対義語はDe-obfuscation(難読化解除)。
TODO:各言語での代表的な難読化手法を列挙したい…
読み:そっく。SoC(読み:えすおーしー、そっく)と書くと組込みシステムの話になるので注意。客先に置かれたネットワーク機器から上がってくるログをSOCに収集して 集中的に 人力で監視するというのがコンセプト。話を聞く限りは、SOCのアイデア自体は新しいものではなく、以前からされていて、別々のサービスでログ監視をしていたManaged Security Service(MSS)の部隊を集約してSOCと称しているケースもあるようだ。
国内だとIIJがMSSを90年代に先駆けて始めたんだっけな(←曖昧な記憶だし、裏取りがまだ)。
TODO:国内のSOCと運用形態書いたほうがいい?
TODO:よくあるSOCの構成。←客先ネットワークでインベントを収集してVPN越しでSOCに転送というパターンのイメージ。
TODO:マイクロソフトとIBMはSOCとは別の呼び方をしてた記憶
SOCからインテリジェンスレポートが発行することがある。マルウェア界隈の情報を毎日キャッチアップできない人は特にそれを読んでおくことをおすすめする(ラックとNTTセキュリティのSOCレポートがおすすめ)。攻撃者に配慮してか、詳細なレポートの提供を数ヶ月遅らせるケースがあるように見える(※あくまで個人の感想です)。
後学のための資料:
本書では、セキュリティ対応を専門として実施しているセキュリティオペレーション事業者の視点から、改めてセキュリティ対応組織における実用的な機能や役割について整理する。
Lessons learned from the Microsoft SOC—Part 1: Organization - Microsoft Security (2019/2/21)
Lessons learned from the Microsoft SOC—Part 2: Organizing people (2019/4/23)
“Part 3: Technology,”: TBA
読み:しーさーと。
(組織内)CSIRTがやること:
CSIRTの機能を体系的にまとめた資料:
日本シーサート協議会が出してる『CSIRT:構築から運用まで』で基礎が抑えられると思う(ただ読み物としては退屈な部類の本)。ただディープな話は期待する本では無いように見えます。それを期待する方はリクルートテクノロジーズの『実践CSIRT 現場で使えるセキュリティ事故対応』が良さげ。
[ステマ]NRIセキュアなどのセキュリティベンダーが組織内CSIRTの立ち上げ支援とかしてるらしいっすよ。
CSIRTの中の人の話:
標的型攻撃を見据えたCSIRTに求められるもの(もう解析関係ない…):
第一に、帯域、そこに存在している通信のことを指す。トラヒックと表記されることもある。
第二に、改ざんされたサイトへのアクセスをまとめてトラフィックと言い回すことがある。
TODO: mangleは、C++などで名前空間や型情報をシンボル名に含めるためのエンコーディングのこと。demangleは、人間に分かりやすいように名前空間や型情報を表示すること。
TODO:例
objdumpやディスアセンブラを使うときに気をつければいい話。Dlangバイナリの場合は、自動でdemangleしてくれないGUI逆アセンブラが多いかもしれない。
単発のdemangleにはc++filtが便利。
TODO: objdump, nm, gdb, Hopper(ネイティブver, D言語ver)でのdemangleのやり方
TODO。英語は要暗記。
改竄と表記することは少ない。
TODO
任意コード実行脆弱性が発見されたもの:
会計ソフトで脆弱性が見つかったこともあるな?(WannaCryで使われたんだっけな)
TODO
TODO