2017-01-01から1年間の記事一覧
年末ということで今年のOSSへのコントリビューションを振り返る。来年はもっとやっていきたい。 Metasploit github.com GSoCにMetasploitで参加していたので、それで結構プルリクを送った。 GSoC 2017にmetasploitで採択された。 - 脱力系日記 Pull Requests…
12/23にあったCyber Wargame Christmas Party (大和セキュリティ勉強会)でLinux Rootkit Internalsという題でLTをしてきた。 atnd.org speakerdeck.com GitHubにLinux rootkitのコードがいろいろ上がっていて、それが結構おもしろくて最近ちらちらコード読…
マルウェアの分類のために使われている機械学習のblind spotを潰すために、機械学習を使っているアンチウイルスを機械学習を使ってバイパスする研究が最近活発になってきている。 この記事では、black hat USA 2017で発表されたBot-Vs-Bot-Evading-Machine-L…
最近、メインのOSをWindowsに移しつつあって、以前つくったChrome拡張の favurl - Chrome ウェブストア をWindowsで使ってみると、URL をツイートするwindowがうまく表示されなかった。ここでのwindowはbrowser_actionで出るpopup、つまりツールバーのアイコ…
golangでご覧!wて言いたくてHTTPサーバー書いた。PythonのSimpleHTTPServerっぽくなった。名前がgoranなので「golangのgoranでご覧!w」と言えるようになった。 tkmru/goran: simple http server. 雑に以下のようなかんじで使える。localhostにしないと使えな…
ActiveResource とは ActiveResourceはRESTful APIをマッピングしActiveRecord のモデルとして利用可能にするgemで、これを使うとActiveRecordでDB操作を行うのと同じようにRESTful APIを利用できます。 github.com ボトルネックになることもある ActiveReso…
どういうこと golangではコマンドラインオプションをflagパッケージを使ってパースすることができる。 しかし、オプションに-h、--helpを指定すると、以下のようにexit status2と出てしまう。 なぜこんな仕様なのか... $ go run flagSample.go -h Usage: -n …
各ユーザーがGitHubに登録している公開鍵は公開されていて誰でも見れるのでこれを使う。 大体の人はGitHubに鍵を登録しているだろうし、これを使えばシュッと鯖にSSHの公開鍵を設定することができて便利。 以下のようにcurlコマンド一発で複数人のSSHの鍵を…
Mitamaeでdotfilesの管理をするようにした。 Mitamaeとは プロビジョニングツールのitameのmruby実装である。mruby実装にすることで何がうれしいかというとシングルバイナリとして動作するので、Ruby や gem に依存しなくなるというのがある。Mitamaeのバイ…
GSoC完走できた〜!!metasploit-framework に3ヶ月間、コントリビュートしていました。 tkmr.hatenablog.comlinuxのstager周りを触るということでアセンブリ書いてお金もらってたけれど、そうそう業務でアセンブリ書かないだろうし、これが人生で最初で最後…
問題 Description: You haxor, come on you little sciddie… debug me, eh? You fucking little lamer… You fuckin’ come on, come debug me! I’ll get your ass, you jerk! Oh, you IDA monkey! Fuck all you and your tools! Come on, you scum haxor, you…
問題 Description: Looks like this packer can not unpack what has been packed :( There are 2 mistakes in unpacking procedure. It leads to the error. Try to fix unpacker and figure out what is inside. packerとpackedという2つの64bitのELFが与…
所属しているCTFチームのTomoriNaoから同人誌を出してコミケで頒布しました。僕はMetasploitから学ぶ複アーキ シェルコード入門という題で記事を書きました。 無事完売した模様。 \TomoriNao Vol.1完売/— Team TomoriNao (@TomoriNao_pro) August 11, 2017…
リバースエンジニアリングであったりシェルコード開発であったりで、複数のアーキテクチャのバイナリが動作する環境が必要になることがある。 その環境構築と使い勝手をいいかんじにしてくれるシェルスクリプトを書いた。qcow2イメージの取り回しをよくする…
バイトで開発するときブランチ切ってプルリクを送る感じで開発してて、ブランチ多いのが気になってたけど、ひとつひとつ消すのもだるいので書いた。 alias rmbr="git branch --merged | grep -v '*' | grep -v 'master' | xargs -I % git branch -d %" alias…
問題文 There might be something hiddenq in this file, can you find it? .exeが与えられる。 解く 動かしてみると、PerlApp Utilityのライセンスが評価版で期限が切れたという旨のメッセージが出る。 これはPCの時間をn日前にすることで回避できる。この…
SHA2017 CTF round Teaser Website Attack (Network) のwriteup。ひさしぶりにCTFをやった。 問題文 Our website received an attack in 2013, we managed to capture the attack in this pcap. Can you find out if we leaked some sensitive information? …
GSoCとは GSoCというのはGoogle Summer of Codeの略で、アメリカでは学校が休みである夏の3ヶ月(5/30〜8/22)の間、Googleからお金を貰ってOSSに貢献しようというイベントである。日本では一部の期間、学校がある期間とかぶり、一見むずかしいように見える…
Rack::Test::Methodsに含まれるRack::Test::UploadedFile.newを使う。Gemfile.lockを見れば分かるようにrack-testはデフォルトでRailsアプリケーションにインストールされている。 以下、grapeで作成した画像をアップロードするAPIに対する正常系のテストの…
動的リンクされたライブラリのアドレス解決の際、ELFではGOT、PLTが、PEではIATがそれぞれ用いられる。たまにどっちがどっちでどうだったのか分からなくなるのでメモしておく。 GOTとPLT GOT(Global Offset Table)はシンボルへのポインタの配列で、 プログラ…
フレームワークを使って開発しているとユニットテスト用にディレクトリが用意されていることもあるが、単体のPythonスクリプトに対してユニットテストを書くときはディレクトリ構成を考える必要がある。やはりユニットテストとそれ以外は違うディレクトリに…
nao: No-meaning Assembly Omitter for IDA proを公開したところ、リポジトリにスターがいっぱいついたり、unicornの作者にコメントされたり、unicornのshowcaseに載せてもらえたりして高まった。 ツイートされた! w0w, finally someone used Unicorn emula…