更新日時で差をつけろ

もはや更新日時でしか差を付けられない

3/27

Twitter、もっと効率的にスライドや資料、情報を集めたいがいい手段を思いつかない。
得た情報をまとめる分にはScrapboxが完全に手に馴染んでくれた。

昨日秋葉原で手に入れたSONYFeliCaカードリーダRC-S310を使おうとしたがうまくいかずに一日が終わってしまった。
libpasori, libpafe, nfcpyを試したがどれもダメだった。
RC-S310は特に古い製品なので、日本語でも英語でも(FeliCaの情報は日本語がメインだが)S320やS380に比べると情報量が少ない。

途中でwebpasoriというものを見つけた。Emscriptenを用いてlibpasoriをWebUSB環境に移植している。macOSChromeで試してみるとリーダ自体の情報の読み取りまではできたものの、カードを読み込むまではできなかった。

非常にもやもやしている。

angstromCTF 2018 に参加した

sei0o, @yfba_, @6Lgug, @cotton392, @Tako_Mochiii でチームを組みました(BiPhone)。

angstromCTF 2018 に出ました。

自分は1630pts取って合計2465ptsで37位、景品を受け取る資格があるアメリカ在住の高校生のチームならば6位と7位の間でした。

低難度の問題が案外すぐ尽きてしまってCTFに意欲を示していた2人が1問も解いてないのがアレ。yfba_が予想以上に熱心にやってた。
slots, Very ez cipher, Washington, Hellcode, Bank Ropperyは解きたかったなあ。
逆にFile Storer, Madlibsは過去のCTFでの知見を活かせたので良かった(両方web...)。

Discordグループをメモとおしゃべりに活用した。楽しかった。

解いた10問のwrite-upはScrapboxに置いてあります

3/14

円周率の日。さすがにあんまり思い出せなくなってきた…
言語学オリンピック一次予選を通過したとの連絡が入った。とりあえずうれしい。一安心。
CombKansaiには行けないけどね。

昼から誘われて NACLOの過去問 を解いたが歯が立たなかった。
せめてWikipediaぐらいは読んで悪あがきをしようと思う。春休みの思い出〜

LSE CTF ではxPlatformとReduced Instruction Set Crackmeを解いた。両方ともSolved 27。
MIPSアセンブリがちょっとだけ読めるようになった。
常設CTFはwrite-upを書いてアウトプットできないのがツライ。

今日はルーター実装とか他のことを一切していない…rev始めると気になってやめられないんだなあ…

3/7

記号論理の本難しいけど、ちょくちょくCNFとか知ってる単語が出てきてモチベーションは維持されてる。ただ最終的に何が学べるかは未知数…SATソルバでどうこうするときに活きるとうれしいな〜程度で。

自作x86エミュの本はいよいよ、というよりもう最終章に入った。BIOSってカーネルを読むだけじゃないんだな、もっと知りたくなってきた。実機で動かすって書いてあるけれど、ブートローダがぐちゃぐちゃになってるこのMacで動くのか心配。 ModR/Mもだいぶわかるようになってきた。本が終わったらいろいろバイナリを与えてみてNot implementedな場所を埋めていきたい。

ルーター自作本はElixirでやるかCでやるか迷っていたが、いろいろ調べた末rawソケットの扱いが不安なので内容通りC言語で書いてみることにした。さらに、Twitterでpcapインターフェースというものの存在を教えてもらったので本を1周できたら使ってみたい。

「リンカ・ローダ実践開発テクニック」も読み始めた。BIOSの話はコッチにも少しだけ書いてある。ELFはCTFで使うので理解していたつもりだったけど、別の視点から見ると知らないことだらけだった。

熱の冷めないうちに進めてしまいたい。

3/6

x86エミュレータ本を今日も進めた。addとかpushとか実装してだんだん形になってきて楽しい。ModR/Mがちょっとややこしい。
(Elixirで)300行程度なのでまだまだわかる。
rm32r32をどこかで見たことがあると感じたが、pwnの最中にアセンブリの命令を調べているときにページに載っていたものだった。なるほど。

「バイナリで遊ぼう!」本を最後まで読み切った。
アセンブリ短歌をやってみようとした。が、自分でアセンブリを手打ちしたことがないので手が動かない…「Cで書いてアセンブルして読む」というのをやっぱりまずはやるべきなのかな。基礎。

Pony という言語を見つけた。アクターモデル?を採用していて、データロックという概念が存在しなかったりするらしい。マイナーかと思えばGitHubリポジトリには結構starがついている。楽しそう。

群論本はちょっと難しくなってきてあんまり進めなかった。

3/5

午前中はAtCoder Omedesを作っていた。Elixirのリハビリ。コンテストごとにレート色が上がった人を祝福してくれます。
午後からはx86エミュレータをElixirで作っていった。条件分岐をif-elseでやるか、ガードでやるか、もしくはループをEnumで実現するかパターンマッチ+再帰で書くか迷う。
HTTPoisonなどを読んでみるべきだろうか。コードリーディングは若干苦手だが…
The BEAM Bookというのもあるみたい。

群論なんかこわくない」「バイナリで遊ぼう」も100ページ弱まで進んだ。
アーベル群とか部分群とか出てきて本格的になってきた。
アセンブリ短歌が想像以上に面白い。でも自分では思いつかないなぁ…

本を読むのは楽しいけど、ちゃんと身につけるようにしたい。どうやったらいいのかわからないからとりあえず手を動かすようにはしている。
pwnもcryptoも最近してないしそれに関して言えばよくない。もっと集中してスピード上げたい。

IOLは書類をやっとポストに入れてきた。通るかな?

3/4

朝メールをチェックすると情報処理学会から電子図書館の案内が来ていたので見てみた。「認証基盤」とかいう堅苦しいページでログインして学会誌を開こうとするもロードが遅い遅い。どういうことなんだろう…

最新版のを見ると「LSI配線問題」というものについての特集があった。いかにうまくマス上に回路を配置するか、というものらしい。なんとなく制約充足問題っぽいな〜と思ってたらその通りで、SATソルバを使って解いていた。他にも機械学習や0-1整数計画法というものを使った解き方が紹介されていた。

3年分ぐらいの学会誌を漁ってみるとファイルシステムとかディジタルゲリマンダについての特集があり、ためになりそうなのでダウンロードした。ぼちぼち読んでいきたい。
論文も一部公開されているので見てみたけど、やっぱり難しく書かれててサクッと読むものではないと感じた。

「バイナリで遊ぼう!」を50ページぐらい読んだ。とはいってもプログラムを書くわけではないのでそんなに時間はかけていない。「バイナリ体操」を日々の生活に取り入れて健康なバイナリアンを目指します。
tarが無圧縮のフォーマットであるというのを今更知った。いや以前どこかで見たはずなんだけど忘れたんだよなあ。

群論なんかこわくない」もわずかに進めた。反復しながら読んでいくのが安全っぽい。

「自作エミュレータで学ぶx86アーキテクチャ」を読み始めた。親切なことにC言語でのソースコードが別途配布されている。が、それを動かすだけでは勉強にならない(かつ自己満足ができない)のでElixirなどで真似して書いてみることにした。
Elixirで書かれたエミュレータは他にもあるみたいだし、多分大丈夫。

IOLの書類を書き上げた。結構手こずった…
TOEICは単語音読に1時間半かけるよりリスニングをなんとかしたほうが良いと感じたので比率を調整した。英検1級の過去問を使ってやっていきたい。
フォロワーの人に THC CTF というのを紹介してもらったので一緒に出ることにした。楽しみ。