2015-08-01から1ヶ月間の記事一覧

「WinDbg Primer」というタイトルで発表した

すみだセキュリティ勉強会2015#2 - すみだセキュリティ勉強会 WinDbgの使い方の紹介と、簡単なデバッグのデモを行った。 WinDbg Primer from inaz2 WinDbgはコマンドラインベースで操作でき、Windows環境におけるGDBのように使えて便利という話をした。 そこ…

x86 bootloaderから簡単なOSカーネルを動かしてみる

「x86 bootloaderでHello Worldを書いてみる」では、リアルモード(16ビット)で動作する簡単なbootloaderを書いてみた。 ここでは、CPUの動作モードをプロテクテッドモード(32ビット)に切り替え、C言語コードからコンパイルした簡単なOSカーネルを動作さ…

VirtualBoxにKali Linux 2.0をインストールする

「VirtualBoxにKali Linux 1.0.6をインストールする」の2.0版。 仮想マシンを作成する 仮想マシンを作成し、仮想マシン設定の「システム」→「プロセッサー」から「PAE/NXを有効化」にチェックを入れておく。 さらに、ホストOSからゲストOSへの通信を行えるよ…

Linux x64でDynamic ROPによるシェルコード実行をやってみる

ASLR+DEP+FullRELROが有効な環境で、Dynamic ROP(JIT-ROP)により任意のシェルコードを実行してみる。 これは、セキュリティ・キャンプ全国大会2015の講義にて行った演習に若干の修正を加えたものである。 環境 Ubuntu Server 14.04.2 64bit版 $ uname -a L…

Windows 8 キーボードショートカットのメモ

よく使うものをまとめてみる。 Keyboard shortcuts - Windows Help Mouse and keyboard: What's new in Windows - Windows Help 何か設定したい Win+XでQuick Linkメニューが表示され、いろいろな設定画面が開ける。 管理者権限でコマンドプロンプトを開く、…

WindowsでEMETを回避するシェルコードを書いてみる

「Windowsで電卓を起動するシェルコードを書いてみる」では、32ビットのWindows環境で動作するシェルコードを書いた。 ここでは、Microsoftが提供する脆弱性緩和ツールEMET(Enhanced Mitigation Experience Toolkit)の検知機構を回避するシェルコードを書…

Windows x64でReturn-oriented Programming(ROP)によるDEP回避をやってみる

「WindowsでReturn-oriented Programming(ROP)によるDEP回避をやってみる」では、Windows 32ビット環境でROPによるDEP回避を行った。 ここでは、Windows 64ビット環境でのROPをやってみる。 環境 Windows 8.1 Pro 64 bit版、Visual Studio Community 2013 …

IAT書き換えによるAPIフックをやってみる

「CreateRemoteThread関数によるDLLインジェクションをやってみる」では、DLLを他のプロセスに読み込ませることにより他プロセス内でのコード実行を行った。 DLLインジェクションの応用のひとつに、他プロセスにおけるAPIフックがある。 これは、プロセスと…

CreateRemoteThread関数によるDLLインジェクションをやってみる

Windowsにおいて、キーロガーなどが自身のプロセスを隠蔽する手法にDLLインジェクションがある。 これは、プログラムをDLLとして作成し、他のプロセスに読み込ませることで実行するというものである。 ここでは、CreateRemoteThread関数を使ったDLLインジェ…

Windowsでdownload-execシェルコードを書いてみる

「Windowsでconnect-backシェルコードを書いてみる」ではプログラムがWinsockを利用していることを前提に、connect-back shellを起動するシェルコードを書いた。 この他に、Windowsではインターネットから実行ファイルをダウンロードし実行するシェルコード…