勉強したこと&やったことまとめ(2020年)
あけましておめでとうございます。
ということで、かなり遅いけど2020年振り返ってみた。
覚えている限りで自分の読んだ本、やったことまとめる。
昨年はプライベートでバタバタしたけど、それなりにいろいろ吸収できたと思う。
書籍
気づけばプロ並みPHP改訂版
動機: web系の脆弱性周りについて勉強したかったので、とりあえずPHPをやっておく必要があると感じたから買った。
感想: 初心者向けの本としては悪くないと思う。個人的には書かれてるコードはあんまり好きじゃない。ちなみにセキュリティの項目はおまけ程度。
railsやった後に思ったけど、PHPのフレームワークを最初から触ってもよかったかもって思った。
徳丸本
動機: webセキュリティに入門したかった。
感想:とても良かった。実際に動いているところを見て理解できる。みんなが勧める理由もわかる。
Goならわかるシステムプログラミング
動機: go言語知りたくなってtour of goで一通り
勉強した後、面白そうだから買った。
感想: レベルとしては大学で勉強するOS、システムプログラミングの基礎知識みたいな感じだったけど、自分みたいなgo初学者からするとサンプルコードいっぱい書いたりして面白かった。
序盤は章末に問題があったのが、中盤からなくなってしまったのが少し残念だった。元々asciiでの連載してた内容だったのもあって忙しかったのかな。
Javascript Primer
動機: CTFで出題されるJSのexploitを習得したかったが、JS何もわからんってなったので買った。
感想: JS複雑すぎる。とても面白かったし、読みやすかった。一通り文法や仕様について解説した後、最後にちょろっとコードを書く章もあって良い。
たまたま読んだ後に仕事でもJavaScript書く機会があったからちょうど良かった。
Real World HTTP
動機: web周りの知識が欲しかった。面白そうだった。著者が前述のgoならわかるシスプロの人。
感想: HTTPとかWebアプリとかの知識について、歴史に沿いながら学べる。とても良かった。goで簡単な実装ができるのも良い。
めんどうくさいWebセキュリティ
動機: web周りの知識が欲しかった。CTFのチームメイトに勧められた。
感想: 正直難しくて、理解できたのが30%くらいだと思う。ブラウザの歴史がわかるところとか、IEに対する皮肉がたびたび出てくるのは面白かったけど、ブラウザの仕様とかについての知識が不足していてわからない章はとことんわからなかった。サンプルコードとか例がないのもキツかった。わかる人はとても面白いと思う。初学者にはきついかも。自分がいつも感じる翻訳本独特の読み辛さはこの本はマシだった。
CTF
都合いい奴なので成績が良かったやつ書く
SECCON Beginners 2020 3位
InterKosenCTF 4位
TSGCTF 17位
b01lerCTF 12位
SECCON2020 Online 15位
Harekaze mini CTF 6位
国内CTFで上位とってイキるのは今年で終わりにしたいな。 来年は海外CTFでも30位以内入れる大会を増やすこと目標頑張る。
その他
Arm binary exploit
とりあえずazeriaの記事読んでlabを進めた。
x86,x64の基本的なbinary exploitができたらそんなに難しくない。Thumb理解したらropもshellcodeも簡単なやつは書けるようになる。 その後rootmeで数問解いた以降続きはやれていない。CTFでもまだarmの問題はあんまり見ていない気がする。今後増える可能性はあると思ってるんだけど。
Burp Web Academy
チームメイトに進められてやったけど、めちゃくちゃ良かった。Labがよく作り込まれている。解説もあるしこれが無料は正直引く。
2~3ヶ月くらいかけてチマチマ進めた。 textは全部読んで、一通りの脆弱性の説明は抑えた。labは解説見てもわからんのとburp pro使わないといけない問題とかが残っていて80%くらい。ちゃんと完走したいね。
Browser Exploit 入門
厳密に言うとJavasciptCoreしか入門できてない。
liveoverflowの動画めっちゃわかりやすいし、本当に面白かった。Browser Exploitできるやつ天才すぎる。
www.youtube.com
何問か解いてみたい過去問の目星はついてるんだけどまとまった時間が欲しくて、まだできていない。これは言い訳でよくない。
Rails Tutorial
webアプリのフレームワークをnodejsのexpressくらいしか触ったことなかったので、メジャーなやつ触りたいと思ったからやった。
めちゃくちゃ良かったし、学生時代に触っておけば良かったと思った。プログラミング初心者にはこれを勧めるべきでは。
まとめ
armにwebにブラウザに、、少し手を広げすぎた感が否めない。もっと深掘りしようと思う。
社会人慣れてきた感あるし、今年はCTFと並行してbug bountyとかにも挑戦したい。
今年もよろしくお願いします。