2008-01-01から1年間の記事一覧

開発の記録

hex

土曜の夜(23:30頃)からバイナリエディタの実装の続きを始める ・範囲選択実装の続き ・マウスでのドラッグに対応+色分けのバグフィクス → 色分け機能に根本的な設計ミスがあったため無効化。マウスイベントの処理を進める。 ・選択ぐりぐりするともたつく…

師走

12月に入って既に一週間経ちました。師走というだけあって時間の進みが早く感じます。

SubVirt: Implementing malware with virtual machines

「仮想マシン・ベースのルートキット」に関するレポートが公開 | 日経 xTECH(クロステック) ITProの記事(2006年4月)でも紹介されている「SubVirt: Implementing malware with virtual machines」 今年のBlackhat の村上さんの資料を見てなるほどと思って…

VMM(仮想マシンモニタを使わない=GuestOSで動かしてないもの)

VMScope(Stealthy Malware Detection Through VMM-Based “Out-of-the-Box” Semantic View Reconstruction) http://www.csc.ncsu.edu/faculty/jiang/pubs/CCS07.pdf TTAnalyze(TTAnalyze: A Tool for Analyzing Malware) http://www.seclab.tuwien.ac.at/pape…

アンパック関連

PolyUnpack(PolyUnpack: Automating the Hidden-Code Extraction of Unpack-Executing Malware) http://www2.computer.org/portal/web/csdl/doi/10.1109/ACSAC.2006.38*1Renovo(Renovo: A Hidden Code Extractor for Packed Executables) Renovo: A Hidden C…

マルウェア解析関連の論文読んでる

http://w-it.jp/pirlo21/2008/11/ethermalware_analysis_via_hard.html にて紹介されている論文「 Ether:Malware Analysis via Hardware Virtualization Extensions」が気になったので読んでいます。具体的な機能については割愛しまして、論文を読んで個人的…

AVTokyo 2008「VC++プロジェクト向け難読化ツールの開発」資料

Slideshareにアップロードしたので、貼っておきますね。構文木やコントロールグラフ云々といった高度なところまではまだ実装できておらず、このときの資料でも詳しく説明できていないので、そういう点ではあまり期待しないでくださいね(汗 英語版の資料作成…

どうでもいいコマンド

etc

cat /dev/random | hexdump Unix系のマシンで、このようなコマンドを実行すると16進数を眺めてニヤニヤすることができます。別にニヤニヤするほどのことでもないんですけど。 いつもGeekのいたずらがそばにいた - FreeBSDいちゃらぶ日記 ついでなのでmyslを…

The Deobfuscator at RECON 2008 by Eric D. Laspe/Jason Raber

RECON 2008 Speakers RECON 2008で発表されたEric D. Laspe氏とJason Raber氏による「The Deobfuscator」(IDA Pro向け難読化の復号ツールの紹介)が興味深いです(Blackhat USA 2008でも発表されているようですが)。概要としては、難読化の復号ツール(Deo…

twittter log: UIとコンピュータ

hex

twitterのログをぺたり。 16:40:08 講義から戻ったー 講義中はずっとGUIにおけるソフトウェアの操作性、視覚ベースのユーザ支援、キーマップやショートカットキーにおける機能の操作性うんたらについて考えていた 16:42:19 やっぱりコンピュータ使うとき、デ…

オレはもうちょっとアルゴリズムの勉強と、アルゴリズムをコードに落とす練習をしといたほうがいい

etc

最近多いのが、アルゴリズムを考えてコードに落とす作業に時間がかかりすぎること。せっかくいいアルゴリズムを思い浮かんでも、コードに落とすのに時間がかかりすぎる。次に問題なのが、そもそもアルゴリズムを考えるのが結構苦手なこと。パズル系の問題を…

リバースエンジニアリングと論理学等についてつらつらと

リバースエンジニアリングとかって、グラフだかなんだかの理論で表現できないんでしょうか。アルゴリズムの教科書を見ていると、たまに論理ばっかりで嫌になっていたのですが、最近は論理式見ても嫌にならなくなりました。 コンパイラ最適化の書籍の、コード…

Visual Reverse-Engineering

Visual Programmingじゃないですが、Visual Reverse-Code−Engineeringなツールとかあったらかっこいいし、便利そうだよね、って思って幾つかアイディアをバインダーにメモメモ。Visualと言っても何をどこまで視覚化できるようにするかってのがミソなのと、そ…

AVTokyo 2008 スピーカー一覧発表されました

>スピーカー (AVTokyo JP) 私は難読化ネタでちょこっと発表させていただきます。Abstract少なすぎなので後でボリュームアップさせてもらう予定です(´Д`;)。 ケンジ(id:kenjiaiko)さんやてっしー(id:tessy)さんとはお会いしたことなかったので、生でお会…

某勉強会と某チャレンジ

etc

http://www4.big.or.jp/~kanai/MT/archives/000840.html 情報漏えい対策・調査の会社|ネットエージェント株式会社 後から発表のチャレンジの日程がローレイヤー勉強会と被っているのは何か裏が意図あるのだろうか、などと考えていました(まあ関係ないんで…

言語処理系の洋書を借りてきた

『Engineering a Compiler』『A Retargetable C Compiler: Design and Implementation』という言語処理系の洋書を大学図書館で借りてきました。タイガーブックと呼ばれる『Modern Compiler Implementation in C』は中央図書館に置いてなかったので、まずはこ…

リバースエンジニアリングとプロテクト開発のココが熱い!

耐タンパー(アンチクラック, アンチリバースエンジニアリング)と難読化を流行らせるにはどうすればいいか、一考してみました。とりあえずリバースエンジニアリングとか、プロテクト開発、難読化の何が熱いのか少し書きつづってみます。 果てのない戦いであ…

いまさら聞けない「難読化」超入門 その1 〜難読化とは〜

「難読化技術」について、広く浅く、できれば簡単に説明したいと思います。 難読化とは 難読化(obfuscation)とは、プログラムやHTMLなどのコード(ソースコード・アセンブリコードなど)を読みづらくする技術です。読みづらくとは、読んで字のごとく人間が…

Reverse engineering Charange 2008 か

rce

リバースエンジニアリングコンテストが開催されるようです。 http://www.netagent.co.jp/reverse_engineering_2008.html Challengeじゃないのかなって最初思ったけど、Charangeだと英語じゃなくてフランス語か何かでしょうか。 関係者各位という一言がNAの中…

shibuya.lispに対抗して Tsukuba.X とかあったらいいよね

rce

などと妄想。Tsukuba.R は既にあるなー、うーむ。

いまさら聞けない「難読化」超入門

実は釣りです。じゃなくて後で書く。

Qt4 Mac

Qt4のプログラミングが気になるのでMacBookにインストールしてみるテスト。どうせGPLだったらQt4に使ってもいいんじゃないか、という悪魔のささやきが。

記憶と頭の回転の速さについて

etc

日々というか夏休みぐーたらしてて思うんですが、夏休みは遊びすぎました。頭を休ませすぎたようです。というわけで自分の記憶に残っている、記憶と頭の早さに関する事柄について思い出しつつ書いてみます。脳の訓練方法はあまり覚えていないので、特に書か…

難読化ツールに実装すると面白そうな機能

難読化ツールでやってしまうと面白そうな機能をメモってみる。 VM化 今流行のやつですね。 構造化例外ハンドラの追加 バッファオーバーフローの検出 スタックメモリの意図しない書き込みとかね! 単なる妄想でした。というか“難読化”だけだとプロテクトとし…

バイナリエディタ進捗具合

hex

MacBook買ったので〜という流れでQtを使う案もありましたが、やっぱりWin32ネイティブでまず作成します。Visual Studio 2008のSP1がリリースされたので、最終的なGUIにはFloating toolbarとかあったらいいですね。AbiWord由来のPieceTable実装を利用させても…

難読化進捗具合

情報特別演習という講義で作っているので、進捗状況の中間報告書を先日書きました。本来はテーマ報告&進捗報告なので、1ページでよかったみたいなんですが、気付いたら2ページに。昨日内容についてアドバイスを指導教官から頂いたので、修正してから来週提…

AVTokyo 2008 に申し込みをしてみる

etc

AVTokyo2008 - てっじーの丸出し AVTokyo2008に参加申し込みしました>< BHJは一般参加もできないですし、CFPも提出できなかったのでこちらのDay SessionとAfter Partyに潜ってきます。

BHJとか

Paperもあるし毎年開催してるから急がなくてもry、などと諭されてしまい(ry)。少しモチベーションが落ちたのでバイナリエディタ関連を少しやった後、また難読化へ。アセンブリ解析だけじゃぬるいから、Cパーサでも書くか?

難読化の続き

構文木作成までできました。意味解析(or中間コード生成)して、コード生成と難読化するのがこれからです。ここからが難読化の本番ですよ。単純な置換なら一晩でできそうですが、複数ソースコードまたいでグローバルにpublicな関数の呼び出し規約変更してみ…