TDUCTFに作問参加した

こんばんは. hhc0nullです.


反省
TDUCTFに作問側で参加しました.


pwnの問題
さて, CTFの問題の方ですが僕の勉強不足で「解こうと思えば解けるけど不親切設計な問題」になってしまったのであまり公開する気がしませんが需要があるみたいなので晒します. もう成長の記録として考えたいです.
ROPUZZLE-REXはGOT周辺の修正版を載せました.
URL: https://www.dropbox.com/s/q4cw46whzroky7y/TDUCTF2015_pwn.zip?dl=0


それぞれの問題について
fwrite/freadを使ってたり, read/writeになってるのにsetbuf(stdout, NULL); setbuf(stdin, NULL);してたりもうダメ.


shellcode for newbie
想定: shellcodeを送ってシェルを取れることを知ってもらいたかった.
反省: setbuf(stdout, NULL); setbuf(stdin, NULL); をし忘れててダメだった. そもそも全体的にread/writeでやるべき.


ret2libc for newbie
想定: データの領域が実行不可でもret2libcとかいうのを使えば逃げられるよ.
反省: いやそもそもret2pltじゃん? 深夜に作ったのが悪い……


rop for newbie
想定: ROPというのがあって, pop eaxはalarm(x); alarm(0);で代用できます.
反省: なぜかI/O周りがダメで勉強不足……

In a new stage
想定: ROPのときと違って使えるバッファが小さいけど, stagerという発想もあるんです.
反省: よく見るとこれはread/writeだ.


Charlotte
想定: はじめてのFSB.
反省: もう迷子. 無駄が多い.


She'll code it after school today
想定: 一番最初に作ったやつでshellcodeの問題のつもり. 以前, "lea -0x4(%ecx), %esp"とかで唸ったことがあったのでそれを意識した.
反省: 深夜作業ダメ. そもそも英語できないのに無理するな.


Enter to a Tailor House.
想定: FSBでシェル取ってみましょう.
反省: Charlotteに同じ.


ROPUZZLE-REX
想定: ROP中心のパズル. 0xXXXX8000にmmapされれば0xXXXX80cdに"mov [eax], ax"でint $0x80を置けるのでsyscall呼べる.
反省: 手動でGOT周辺を埋めてたのでmemsetを消し忘れて地道にシェルコードを置けるようになってしまった. そもそもhandlerでkill()する意味がないのに何をやってるんだ深夜の僕. もうガバガバ.


作問の教訓
作問の経験をもっとすべき.

ksnctfに問題ジャンルをつけるなら

ども, hhc0nullです.
【眠居ヌル】ksnctfをジャンル分け【オリジナル】をセルフカバーしました.


1. Test Problem [Misc]
2. Easy Cipher [Crypto/Trivia]
3. Crawling Chaos [Web]
4. Villager A [Binary(Pwnables)]
5. Onion [Misc]
6. Login [Web]
7. Programming [Misc]
8. Basic is secure? [Network]
9. Digest is secure! [Network]


10. #! [Misc]
11. Riddle [Binary(Reversing)]
12. Hypertext Preprocessor [Web]
13. Proverb [Misc]
14. John [Crypto]
15. Jewel [Binary(Reversing)/Mobile]
16. Math I [Crypto]
17. Math II [Crypto/Algorithm]
18. USB flash drive [Forensics]
19. Zip de kure [Misc]


20. G00913 [Trivia]
21. Perfect Cipher [Crypto]
22. Square Cipher [Misc]
23. Villager B [Binary(Pwnables)]
24. Rights out [Binary(Reversing)]
25. Reserved [Trivia]
26. Sherlock Holmes [Web]
27. Lives out [Binary(Reversing)]
28. Lo-Tech Cipher [Stego]
29. Double Blind [Forensics]


30. Alpha Mixed Cipher [Binary/Trivia]
31. KanGacha [Web/Crypto]
32. Simple Auth [Web]
33. HTTPS is secure. [Network/Crypto]
34. Are you human? [PPC/Algorithm]
35. Simple Auth II [Web]
36. Are you ESPer? [Binary(Reversing)/Crypto]


こんな感じだと思ってます.
異論は認めますのでコメントとかリプライとかでお願いします.


ではでは, 頑張ってください.

CureSecureを辞めた話と小言とそのうちクソリプされそうな何か

こんばんは, CureSecure元リーダーのhhc0nullです.
※一応書いておきますが個人の見解というやつです.


この記事をまとめると(忙しいひと向け)
読むのにかかる時間: 10分以下

  • hhc0null氏がCureSecureをたたんだ
  • 氏曰く, 「CureSecureというチームでやることの意義を見失った」とのこと
  • チームのやる気ないメンバーは「チームに所属している」ということを自覚すべき
  • CTFは競技なんだからある程度の「やる気」というのがあって然るべきなのでは
  • 好きな(こと|もの)を大事にしましょう
  • 結局, やるやる詐欺ってよくないです, というお話.


CureSecure, 店じまいするってよ
今回気まぐれで, CureSecureを店じまいしてきました.
CureSecureは, 2012年のSECCON 筑波大会に出たTeam TNCTをベースに出来たチームです.
当初は筑波大会のために寄せ集めた3人だけの少人数でやっていました. 今までで加入したメンバーは15名にのぼると思われます. 最後は8人くらいに落ち着いてました.


CureSecureのリーダーを務めての感想
チームを管理するのはすごく難しいというのが正直な感想です. メンバーのモチベーションを保ちたくてもどうすればいいか分からなかったです.


例えばサイボウズLiveのハコで「情報共有板」とか「ジャンルについての質問をする板」みたいなのを作ってみましたがまったく利用してもらえずだったり.
終始「チームとしてやるにはどうすればいいんだろう」とか「チームってなんなんだろう」ということばかり悩んでいました.
例えばあるひとに相談したら「自分が頑張ってる姿を見せればみんなも自ずとついてきてくれるんじゃないかな」と言われました. 頑張ってみたけどちょっとダメだったようです, そういう日もあります.
多分, 「どうすればついてきてくれるのか」というのは永遠の課題なんじゃないでしょうかねえ.

最後の方はなんだかんだ他のチームメンバーの予定が合わなかったりして基本的に2人でやるハメになったりしてました.
(その2人のうち一人はN4NUくんなんですが, 彼は頑張り屋さんなので本当に尽力してくれました. たまに僕のやる気が見られないようなときもあったりしてごめんね. バッサバサ問題を解いてく姿, カッコよかったよ!)
一時期完全にひとりでやってたときもあったので, 実はすごい救われました.


一般的なチームの人間についての話
多分どんなチームの中にもまるっきりやらないひとや, 逆にすごく頑張ってくれるひとがいます. 後者には引き続き頑張ってもらえればそれでいいと思いますが, 未だに前者への対応がわかりません.
中にはやりたいんだけど忙しくてまったく大会に参加できないという人もいます. 彼らは彼らなりに頑張っているので, 大会に出れなくても受け入れないといけませんね.


あなたは本当にCTFをしたいんですか?
人間, 強制されてやることには抵抗があると思います. 少なくとも僕はそうです.
CTFはチームでやることが多いのですが, やっぱりチームというのは組織なのである程度の強制力があります.
ただ, CTFチームって「仕事として課せられている」わけではなく, 興味のある人間で構成されたものであるため本来は積極的になれるはずなのではないでしょうか.
しかし, そこでやる気が完全にみられないひとがいるというのは, 「本当は好きじゃないのに(自分を騙して)無理やりやっている」ということなんじゃないでしょうか.


ここ最近CTFブームで人口が増えています. それ自体いいこともよくないこともあると思いますが, CTFをやるなら自分の本心でやったほうがいいと思います. あまりやる気がないなら「自分はやらない」と宣言するのも必要なのかもしれませんね.
「チームでやる」ということを軽視しているひとは, 苦しむ人がいるということも憶えておいてくださいね. チームでやるのならば本来はメンバーに一定の責任が伴うものでしょうから.


上のように書いていると偏った感じに思えてきましたが, 実際問題CTFは競技なので「楽しければいい」という考え方もあるとは思いますが, 勝負事らしく本気になるというのも大事だと思う, ということを言いたいんです.


これからどうするか
どうするか未定です. いきなり某チームに「ウチくる?」と言われたりもしましたがしばらく独り身でもいいなあとも思ってます.
なんだか彼女と別れたような錯覚ありますね, これ. おもしろいもんです.
ただ, 引き続きCTFというかpwnは続けていきます. ひとりでも出来るように(なんか『ハイキュー』を思い出しますねえ), webなどその他のジャンルも手を出していかなきゃなあ.


CTFをしているひとへ(自戒の意も含む)
最後にひとことです. 自戒も含んでます. そのうちクソリプに使われそうですね.


やらないより少しでもやることが大事です. CTFはやらないと確実に伸びません. カメだからこそ歩かないとだめなように, できないからこそやらなければ何も始まりません.
多分, 口を開いてやらないひとより, (口開いてもいいけど)寡黙にやるひとの方がカッコいいです.
また, CTF強いひとたちはただ単に「あなたよりもやっている」というだけです. そうなりたいならひたすらやればいいんです. 「やるだけ」というやつです.
「やり方がわからない」ですって? そんなもん適当に人を捕まえて聞いてください. 面倒見の良いやさしいひとはいっぱいいるんだから聞きましょう. 聞かれれば僕だって答えますよ.
ただ, ひな鳥は親鳥から離れるものなので, ある程度までいったら自分でやることも大事です.
あなたはきっとできるようになります. CTFやってりゃ確実に得るものはあるんですから, やるだけやってみましょう. 話はそれからってもんです.

SECCON 2014 DNS Securty Challenge(長野大会)に参加した

ぼくぬるちゃん!こんにちはこんにちは!!

先日, 長野県の信州大学で開催されたSECCON 2014 DNS Security ChallengeにCureSecureとして参加してきました.
当初は1人参加の予定でしたが, 数日前に急遽@MIT_TI0901STを迎えて,
当日にtuat_mccで参加予定だった@shift_cropsを吸収して計3人に.


パケットは6問あり, 主に自分は問4と問6を担当しました.
クイズは計80問(だったと思う)あって, 解いても結局グズグズ落としてしまい3ptsで終了……
結果は9位でした.
writeupはいつか書くかも……?


次の北海道はキツいので, 大阪のx86 Exploit Challengeですねー
勝ちたいなあ.

SECCON × CEDEC CHALLENGE に参加した

ぼくぬるちゃん!こんにちはこんにちは!!
SECCON×CEDEC CHALLENGE(以下, SECCON横浜)に参加しましたので足あととして書いておきます.


どんな大会か

  • 1日目

  CTF初心者やセキュリティに興味のあるひとへ向けたCTFのイロハについての講義.
 過去の全国大会で出たWeb問題の体験コーナー.

  • 2日目

  各ジャンル(バイナリ, Web, ネットワーク)で10人の決勝予選進出者を決定.
 バイナリ部門は, (ドSで有名な)愛甲先生による早解きバイナリ解析.
 問題レベルは1ptか5ptくらいだけど, プレッシャーがキツい.


  まず, 親を1人決める. オークションで決めて, 親になると自分の指定した時間だけ問題を独占して解ける.

 が, ライブバイナリーディング状態なのでとてもつらい!!(親になるとスクリーンに自分のモニタを映すことになる)

  • 3日目

  敗者復活戦(結果的に全員復活できたらしい)
 予選と決勝はハッカークイズ大会.
 ひたすら早押しで, 決勝まではお手つきは無し. 決勝だけお手つきでマイナス1.


たのしかった
  早押しクイズはなかなかエキサイトしてました.
 決勝戦まで進みましたが, 早押し健闘したもののやはりクイズガチ勢には勝てませんでした.
 焦ってだいぶお手つきしたので今後は気をつけたいですね.
 めっちゃ楽しかったので次回も参加したいです.

SANS NETWARS Tournament 2014に参加した

ぼくぬるちゃん! こんにちはこんにちは!!
SANS NETWARSに参加させていただきました.



SANS NETWARSとは

SANS Instituteの協力の下、最先端の情報セキュリティのトピックと世界基準のセキュリティトレーニングを若い世代の皆さまに体感してもらい、自身のスキルアップに役立てるとともに、情報セキュリティへの関心を深めてもらうことを目的としたイベント
- 引用元: http://www.nri-secure.co.jp/event/2014/netwars.html

いろいろなハッキング手法をethicalに教えてもらい, サーバ管理やクラッカーからの防御に役立てましょうって感じの講習会です.

SEC560: Network Penetration Testing and Ethical Hacking
SEC504: Hacker Techniques, Exploits and Incident Handling

という2つの講習をガッチャンコしているので相当なハイペースでの講義でしたが, まあ大丈夫でした.
また, 相当な費用がかかっているはずです(!)
NRIセキュアさん, 本当にありがとうございます!!


講義内容について

(本来有料の講習会のため, ご想像にお任せします!)


NETWARS Tournamentについて

NETWARSトーナメントはSANSにより教育に主眼を置いて開発されたCapture The Flag (CTF) 形式のセキュリティコンテストです。参加者は1日目のトレーニングの成果を存分に生かして、出題されるセキュリティ問題に挑んでいただきます。
- 引用元: http://www.nri-secure.co.jp/event/2014/netwars.html

ということで, CTFでした.
最初はnon-rootな環境で問題(Lv1)を解いて, 次にrootになってもっと解く(Lv2), その次は少しそとに出れる(Lv3)ようになって, って感じです.
それ以上は誰も到達してなかったのでよくわかりません.
自分はLv3の手前で足踏みになりました. あと少しだったのになあ.


CTFの結果

じゃーん

14位でした. ウーム.
まあ後少しで出来ないっていうのは, ボクらしいんじゃないんでしょうかね(不服)


まとめ
とっても楽しかったです. 関係者各位, ありがとうございました!!

HITCON 2014 CTFに出た

こんにちは!
めっちゃ久しぶりの更新です. ちゃんと生きてました.
ちゃんと人生迷走中です.
迷走中って番組あれば余裕でレギュラー取れちゃいます.
進路とマサラタウンでサヨナラバイバイしました.
それくらい迷走中ですよ奥さん!!



それはそうと, HITCONに出ました.
fuzzi3として参加してました.


fuzzi3とはなにか

dodododo、newbie、katagaitai、ED、********、superflip、0x0、CureSecure、eggpodさん、ucqさん、きくちゃんさん

からなるスゴイチームです. でも実態はbinja - sutegoma2みたいな感じらしいです.
リーダーはakiym氏. 命名はhority氏.
優秀なリーダーとセンスのかたまりでした!

詳しくはmage氏の記事をご覧ください.
というかWriteupもmage氏の方が充実してます.


解けた問題について

以上です. チームがつよいこともあって村人にさえなれない自分は一問だけでした. 精進するべし.


戦績
一位ご確認ください:



すごいっすね. 数の暴力&&すごいお兄さんたちへのおんぶの賜物ですよ!
たのしかったです, メンバーのみなさんありがとうございました!!


余談

(実際に勝ったのですごい)