AppleがCVEを割り当てずに修正した(?)けどバイパス可能なFinderのRCEの脆弱性を試してみた

概要 AppleがCVEを割り当てずに修正したけど、修正が雑でバイパス可能な状態の脆弱性がインターネットで話題だったのでやっていく。 拡張子 .inetloc のinetlocファイルという、RSSフィードなどのインターネット上のコンテンツを指すためのショートカットがm…

「趣味と実益のための著名なOSSライブラリ起因の脆弱性の探求」という題でセキュキャンで講義してきた

セキュリティ・キャンプ全国大会 2021 オンラインで講義をしました!! www.ipa.go.jp 去年も講義してたけど、去年は翌日の坂本真綾のライブで打ち上がって頭が書き換えられてブログ書いてなかったっぽい。 また名古屋旅行したい。次の動画は去年の打ち上げ…

リファレンスチェックへのお気持ち

特に転職活動してる訳ではないです。 よほどいい条件でのオファーが確定してるとかじゃない限りリファレンスチェックやるって言った段階で採用辞退される可能性高まると思うんだけどリファレンスチェック実施各社ではそういうことはないのかな— たけまる (@t…

シン・エヴァ感想

初回は公開初日朝7:30に見に行って、2回目は映画館が休館する緊急事態宣言が出る前日に行った。 2回目は偶然、休館前日だったので運がよかった。 おめでとうエンドに期待 pic.twitter.com/xL76LeIByu— たけまる (@tkmru) 2021年3月7日 ええ、明日から映画館…

ブログの名前変えた

経緯 あなたのチーム名は 「冬のソフトウェア海岸」 です - ISUCON チーム名ジェネレータ https://t.co/OPCLxtIH0z— たけまる (@tkmru) 2020年10月15日 この名前好きすぎてブログの名前にした。有機物と無機物が混ざってエモい....— たけまる (@tkmru) 2020…

Eclipseを使わずにGhidra Extensionをビルドする方法

Ghidraでは、Ghidra Extensionを作成して機能を拡張できます。 Ghidra Extensionは、使う度にScript Managerを通して呼び出すGhidra Scriptとは違い、Ghidraの起動時に自動的にロードされます。 このため、単にGhidra上で解析を効率化するための機能を実行す…

リバースエンジニアリングツールGhidra実践ガイドを執筆しました

去年、Ghidraについての技術同人誌を書いたことがきっかけで、商業誌としてGhidraを題材にしたリバースエンジニアリングの本を執筆しました。同人誌のときとは比べものにならないほど、ボリュームアップしています(なんと688ページ!!)のでぜひ読んでみて…

WEB+DB PRESS Vol.118に「はじめての脆弱性調査」を寄稿しました

WEB+DB PRESS Vol.118の「はじめての脆弱性調査」という特集を丸々執筆しました。 ツールの紹介を主とすることで、ナウい話題もいれつつ難易度を抑えたのがこだわりポイントです!古き良きハッカージャパンの記事を思い出しながら書きました。nginx alias tr…

IDAPythonでpyenvでインストールしたPythonを選択する方法

IDA

IDAはバージョン7.4からPython3に対応した IDAは拡張性にすぐれており、IDAPythonという独自拡張されたPythonによるスクリプティング機能を備えています。 最近までPython2系にしか対応していませんでしたが、バージョン7.4からPython3系に対応しました! 普…

去年、Hacktoberfestに参加してTシャツとステッカーをもらった

Hacktoberfestのときに出したプルリクのひとつが最近マージされて存在を思い出した。 Tシャツとステッカーは1月上旬に来た気がする。 Hacktoberfestとは HacktoberfestはDigitalOceanとDEVによって毎年10月に行われているイベントです。 1ヶ月の間にプルリク…

任意コード実行が可能なPHP-FPMの脆弱性(CVE-2019-11043)を試してみた

少し前に出たCVE-2019-11043という脆弱性を試してみました。すでに日本語解説記事もありますが備忘録ということで。 脆弱性概要 PHPのFastCGI 実装のひとつの PHP-FPM(FastCGI Process Manager)に任意コード実行が可能な脆弱性(CVE-2019-11043)が見つか…

技術書典7で Ghidra Pro Book を頒布します!

技術書典7で Allsafeというサークルから Ghidra Pro Book を頒布します 場所は「お48C」です! なんと場所は、あのTomoriNaoの横なので2冊いっしょに買えます!! techbookfest.org 表紙は IDA Pro Book をリスペクトしたものになっています! Ghidraの基本…

技術書典7で TomoriNao vol.3 を頒布します!!!

前回までのストーリー tkmr.hatenablog.com 今回 技術書典7で TomoriNao vol.3 を頒布します!!! 場所は「お48C」です!!! techbookfest.org TomoriNao is back!9月22日の #技術書典 7 お48C で新刊Vol. 3を頒布します今回も友利奈緒たちがセキュリティ…

Nature Remo + AWS Lambda + Mackerel で室温を記録してみた

暑くなってきたのでスマートホーム化していきたいなと思い、ひとまずNature RemoのAPIで遊んでみるか〜と、Nature Remo + AWS Lambda + Mackerel で室温を記録していくようにしてみたところ、以下のようなグラフになった。 冷房をかけたときに温度が下がった…

globalのgitignoreの設定をdotfilesでやるようにした

新しいPCにglobalのgitignoreを入れ忘れてたからdotfilesの中でやるようにした。 github.com 以下のシェルスクリプトで、github/gitignoreからダウンロードしてきたgitignoreを~/.gitignoreに設置している。 if [ "$(uname)" = 'Darwin' ]; then curl -fL 'h…

GhidraのScriptまわりについて

はじめに 先日、NSAがリバースエンジニアリングツールのGhidraを公開した。 OSSであることや、Hex-rays社が高価で販売しているようなデコンパイラがついていることから注目されている。 SREを「Site Reliability Engineering」ではなく「Software Reverse En…

Nginxのalias traversalについて

Nginxのalias traversalとは Nginxではaliasディレクティブを使って locationディレクティブで指定したURIのパスをファイルシステム上のパスに対応させることができます。 以下の例のようにconfigを書くと、/var/www/app/static/以下にあるファイルに/static…

自分向けDockerコマンドのメモ

Dockerは便利だけど、ぼくにとっては普段そんなに使うツールではなくて、よくコマンドを忘れてしまう。 覚えられるように、すぐ見返せるように、メモしておく。 Dockerイメージに関するコマンド 一覧 $ docker images ビルド 直下にあるDockerFileからビルド…

ISUCONがきっかけでSinatraにコントリビュートした話

ISUCON8の予選へ向けてSinatraで作られたwebアプリケーションを高速化する方法を模索する最中、 ErubisというERBテンプレートエンジンが使われているコードを見かけました。 これがきっかけでより高速なeRubyテンプレートエンジンであるErubiをサポートする…

IDAの便利プラグイン3選!!!

IDA

これはセキュリティツール系 Advent Calendar 2018 の25日目の記事です。 この記事では便利なIDAのプラグインを3つ紹介したいと思います。 findCrypt findCryptは暗号に使われる定数をgrepすることで、どんな暗号が使われているか判別するIDAプラグインです…

リアルモードでも32bitのレジスタを使うことができる

この記事は自作OS Advent Calendar 2018の21日目の記事です。 自作OSのアドカレなので、まずは作っているCPUエミュの話をしましょう。 CPUエミュを作っている話 そもそもなぜCPUエミュを作っているのかというと、 Golangで書かれたファミコンのエミュのコー…

PinなどのDBIツールでトレースした結果をIDAにマッピングするプラグイン「Lighthouse」を使ってみた

IDA

Lighthouseとは Lighthouse とは、DBIツールでトレースすることで得たコードカバレッジデータを見やすくIDA内の独自のViewに表示し、IDAのDisassembly View、Graph ViewにマッピングしてくれるIDAプラグインである。 github.com DBI(Dynamic Binary Instrum…

Rails appのRuboCopのconfigにはGitHub社で使われているものを使うとよさそう

RuboCopとは RuboCopはRuby向けのコードフォーマッターで、書いたコードがスタイルガイドに準拠しているかシュッとチェックできる。 github.com -aでauto fixすることができてとても便利であるが、 結構うるさいのでconfigである.rubocop.ymlを調整しないと…

Android/iOS端末、アプリを扱うのに便利なコマンド、aliasたち

Android/iOS端末、アプリについて取得したい情報があるとき、ついついAndroidやiPhoneの端末のUIからがんばってしまいがちだが、 コマンドでやると楽に取得できる。 そんなときに使える、Android/iOSアプリを開発するときや、解析するときに便利なコマンド、…

MagSafe2のケーブルを熱収縮チューブで補修した

MagSafe 2のケーブルの皮膜が劣化して、中の電線が見える状態になったので熱収縮チューブで補修した。使い始めて5年なので寿命かな。 チューブをケーブルで巻いてはんだごてで温めるだけ。 手持ちの熱収縮チューブが見当たらなくて新しく買うことにしたけれ…

Homebrewで入るNASMは古すぎて、aptで入るNASMとは挙動が違う

自作CPUエミュの動作確認をしているときに、Homebrewで入るNASMとaptで入るNASMの挙動が違うことに気がついた。 挙動の違いを見る 簡単なコードをアセンブルして違いを見る。 BITS 32 org 0x7c00 sub esp, 16 aptで入るNASM Ubuntuにaptで入るNASMを使って、…

LLVM IR、LLVM bitcodeを扱うコマンドたちのメモ

LLVM IR、LLVM bitcodeを扱うコマンドをよく忘れるのでメモしておく。 CのコードをLLVM IR、LLVM bitcodeに変換するコマンド、LLVM bitcodeをインタプリタから実行するコマンド、コンパイルするコマンドなどを書いておく。 以下のCのコードを変換していく。 …

LLVMのPassを題材にした0CTF CTF quals 2017のChoicesを解いた

最近、LLVMに興味があって、いろいろ調べているうちにLLVMのPassのreversingの問題を見つけたので解いてみた。 write-ups-2017/0ctf-quals-2017/reverse/Choices-297 at master · ctfs/write-ups-2017 問題 All roads lead to Vegas. Compile: clang -Xclang…

技術書展4でTomoriNao Vol.2を頒布してきた!!

11時20分くらいに着いたら整理券が1918番で結局入れたのは12時半ごろだった。予想以上に人が多い。 13時頃には200冊全部売れてよかったですね。 TomoriNao vol.2完売!!ありがとうございます!!!kindle版をよろしくお願いします!!!! #技術書典4— たけ…

rails 5.1.6 のアプリをrails 5.2.0にアップデートしたときに困ったとこメモ

rails 5.1.6 のアプリをrails 5.2.0にアップデートしたときに、いろいろハマったのでメモ。 rails側 rails側での作業メモ。 cannot load such file -- bootsnap/setup とりあえず rails app:updateしてみる。 route.rbなどは上書きしたらダメだけど、boot.rb…