cookies.txt      .scr

ただのテキストファイルのようだ

webrick/httpproxyのだいたいの流れ

日を改めるごとに忘れて1から読み始めてるので、メモ。 webrick/server GenericServer #start -> #start_thread -> #run(abstract*1 ) webrick/httpserver HTTPServer #run -> #service(overrided) webrick/httpproxy HTTPProxyServer #service -> #proxy_s…

オリジナルファイルと別名でtar archive作るとき

./dir/hogeというファイルがあって、これをtarで固める。 % find dir dir dir/hoge % tar zcf out.tgz dir % tar tf out.tgz dir/ dir/hoge(あまりないかもしれないけど)このhogeを、そのままの名前でなくて別名でアーカイブしたいとき。 一時的に、直接ho…

gccでinline assemblyしたとき

インラインアセンブラ - falcon071011.log http://falcon071011.com/2013/10/20/inline-assembler/ にて提起されたことについて。エラーに出ているような行はインラインアセンブラ中に見当たらないし、書いたとこ以外でエラーしてると見える。 一応試してみ…

Hash#invertの、値を上書きしないやつ

{a:1, b:1, c:2}.invert # => {1=>:b, 2=>:c}:aさんが泣いちゃいます。Hash[*{a:1, b:1, c:2}.group_by{|k,v| v}.map{|v,kv| [v,kv.map{|k,v| k}]}.flatten(1)] # => {1=>[:a, :b], 2=>[:c]}よかったね!:aさん!

qtbindingsのemitが動かない話

ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux] ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-linux] gem 2.1.9 gem-1.9 1.8.23 にて。http://stackoverflow.com/questions/15583114/qtruby-emit-does-not-work これ。ruby2.0では動か…

バイナリファイルをcatしてしまってアルファベットが文字化けってとき

printf "\ec"

CSAW 2013 Qualification write up

どうも。 WebもExploitもReverseも適当にしか解けないです。 さて、Reconを三つ解きました。

CTF各位

正直言いましょう、良問ではないです。 ただ、解けないことはありません。いや、解けないかもしれません。 ・本来のファイルから、初めの4byte(印字可能文字列)を削ってあります。正しい4byteを足してからごにょごにょしてください。 http://www.dropbox.com…

Symbol Table Overflow

初めて知った。Rubyのシンボルって無限には作れないんだね。 a="a" loop do puts a.to_sym a = a.succ endこんなスクリプト書いた。 そしたら"dodxx".to_symの次のシンボルづくりで死んだ。 a.rb:3:in `to_sym': symbol table overflow (symbol dodxy) (Runt…

gnashをインストールしたらchromiumでflashplayerが動かなくなった話

ニコ動とかが「flashplayer」更新しろ!って言ってきた。chrome://plugins に 本来の「Adobe Flash Player」とは別に「Shockwave Flash」というのが存在しているのを確認。 バージョンが10.1とか....無効にする。 完璧。

conflict / collision

きとけいさんが詳しくconflict/collisionについて書いてくださってました。http://blog.kitokey.net/2013/08/collisionconflict.html conflictとcollision似すぎつらい— koosiizu (@cookies146) 2013, 8月 21"collision opinion" Google - 69,900,000 件 hit…

セキュキャン2013

作りました:セキュリティキャンプ2013感想まとめ セキュリティ・キャンプ中央大会2013にソフトウェア・セキュリティ・クラスのチューターとしてお仕事させていただきました。 昨年のセキュキャン2012にソフトウェアクラス卒業したので、一年後に戻ってきた…

キャンプ

むっちゃドキドキしてきた

undefinedとunspecified

未定義と不定って訳されるらしい。 似て非なるものなので。 http://c-faq.com/ansi/undef.html を読んでみて、自分の解釈。implementation-defined : コンパイルに失敗してはならず、なにか振る舞わないといけない。The Standardが許される振る舞いをいくつ…

TotalMounterをWindows8に入れてしまい、BSoDに陥った人へ

13/08/03,執筆当時の話です。いやもしかしたら僕だけなのかもしれないけれど。SSDだし。ところでTotalMounterのRequirementsを見てみよう。 http://www.kernsafe.com/product/totalmounter.aspx どこにWindows8という文字があるんだい? 対応機種に入ってな…

LEAVE

MOV SP, BP POP BP

x64の関数の引数の渡し方

Windows: http://msdn.microsoft.com/en-us/library/zthk2dkh.aspx RCX, RDX, R8, R9が基本。 CD89と覚えよう。GCC: RDI,RSI,RDX,RCX,R8,R9の順。 RDIとRDX覚えづらいね。 ともにRAXは、32bit同様戻り値が入る。

mplayerの-loop option

mplayerいいっすよねー。 何でも再生出来ますよねー。唐突ですが、ループについて mplayerで動画・音声を繰り返し再生するときは-loopが使えます。 -loopの後は繰り返す回数で、0ならforever. mplayer -loop 0 hoge.mpg # hoge.mpgを永久再生とまあ調べると…

syscalls

Linux前提で話を進めます -- 完全に自分の環境の話ですLinux3.9.7 -- まあ、自分で全部書いたことなんて実はないんだけど、 いろんなところからshellcodeをダウンロードしてきます。//今なら書ける気がする そうすると必ずint $0x80ってのがあるわけです。x8…

覚えるべきgdbコマンドの続き

http://cookies.hatenablog.jp/entry/2012/09/29/203439 の続き。disasはまあよいんだけど、そのアドレスを含む関数全部出力されちゃうし、いろいろあったりするので。 x/i 値を機械語として扱い、逆アセンブル d breakpointとか削除 dis breakpointを一時的…

WordPressのリダイレクト

サイトを巡回しつつ、URLいじくってたら、どこもかしこも http://example.com/aにアクセスしたら/aboutに飛ばしてくれて、 /bにアクセスしてもbで始まるURLに飛ばしてくれるので、何かと思ったら、 たぶんみんなWordPressを使ってたっぽい。初めて知った。 …

ArchLinux、/usr/binにまとめちゃうってよ。

こないだArchLinuxのinitscriptsが続々削除された旨の記事を書いたが、 こんどは(/bin, /sbin, /usr/bin, /usr/sbin), (/lib, /usr/lib)を統合しようとかいう大変革が。 https://www.archlinux.org/news/binaries-move-to-usrbin-requiring-update-intervent…

method_missingすげー

method_missingすげー BasicObjectすげー感激しちゃいます。メモ: Class, Moduleは基本Objectのconstantsとなるので、 class ::Integerとかしないとアクセスできない。 #はてな記法対策 def coerce (obj) [obj, self.to_i] endとかすると、そのクラスをNu…

Windows8をSSDに入れるとスリープがやばい話

前々回くらいに書きました。 Windows8をSSDに入れて動かして楽しんでるんですが、さっそく問題が。 スリープをした後そこから復帰しようとすると、死ぬ。 少しだけ復帰したっぽくなるけど、悪いとログイン画面、よくてもデスクトップが表示されたあたりで死…

ArchLinuxがrc.dの起動スクリプトを削除し始めた話

たぶんこの数週間くらいだと思うんだけど、続々と`rc.d list`の行数が減っていった。 sshdとかcrondとか。 何が起こったかと思ってさっきpacman -Syuuしたら、iptablesまで消えた。 これはただ事ではないと、ArchLinuxのサイト言ったら、newsにあった。 って…

tmuxのwindow title

間違ってバイナリファイルをcatとかで開いちゃうと tmuxのwindow titleが大変なことになって 下のwindow listが二行になっちゃったりして作業どころじゃなくなる。これはバイナリファイルに"\033k"という文字があるとき起きちゃうもので、 "\033kabc"と出力…

login shells

cookies:x:1000:1000::/home/cookies:/bin/zshこのときの一番最後の/bin/zshについで。man useraddとか眺めると -s shell ユーザのログインシェルの名前。 デフォルトではこのフィールドは空白となり、 システムがデフォルトのログインシェルを選ぶ。と。僕…

あたりまえ

y > mx + bがあのへんの領域をあらわすーとか習ったから直線 ax + by + c = 0に対して点P(x1,y1),Q(x2,y2)が同じ側にある ⇔ ax + by + cにP,Qの座標を代入した時の符号が同じ ⇔ (a*x1 + b*y1 + c) * (a*x2 + b*y2 + c) > 0直線なのでもちろんa≠0またはb≠0 ひ…

aCbの値

階乗をどうのこうのしようかと思ったけど、実際これで十分だよね、って話。 def comb( a, b ) ([nil]*a).combination(b).size endArray#combinationの戻り値Enumeratorだし安心

好きな文字でのsucc的配列のなにか

ううう、思いつかなかったんだよ.... str = 'abcdefghijklmnopqrstuvwxyz0123456789'.scan(/./) max_length = 2 (1..max_length).map{|len| str.repeated_permutation(len).to_a.map(&:join)}.flatten