Tcpreplayのインストールにつまづいた

Tcpreplayをmacにインストールするのに、つまづいたのでメモ。ふつーにbrewでインストールするも、Library not loadedとか言われる。 tcprewriteはTcpreplayに入ってるツールの1つ。 $ brew install tcprelay $ tcprewrite dyld: Library not loaded: /usr/l…

favurlが窓の杜で紹介された

favurlという以前つくったchrome拡張が窓の杜で紹介されました。【レビュー】Twitterでお気に入り追加した“あとで読むURL”を自動で開けるChrome拡張「favurl」 - 窓の杜www.forest.impress.co.jp やったね!! エイプリルフールネタではなかった!!

Icon Resizerていうwebアプリつくった

Icon Resizerていうアイコンをリサイズするwebアプリをつくった。Icon Resizerドロップした画像からスマホアプリとかブラウザの拡張を開発するのに必要な複数のサイズのアイコンを一気に生成してくれるっていうやつ。 スマホアプリとかブラウザの拡張作る時…

pixiv 2015 SPRING BOOT CAMP行ってきた!!

pixiv 2015 SPRING BOOT CAMPとは 3月2日(月)~3月13日(金) に行われたピクシブ社のインターンシップのことです。 お賃金と交通費、宿泊費が支給されるとてもイケイケでナイスなイベントです。pixiv 2015 SPRING BOOT CAMP エントリー - ピクシブ株式会社 採…

アキバで絵の押し売りにあった話

押し売り ? pic.twitter.com/nqAVBbONnS— たけまる (@tkmru) February 7, 2015 ?で油断してたら絵の押し売りにあった— たけまる (@tkmru) February 7, 2015 にじみ出る人の良さを隠しきれないオタクなので秋葉に来るたびに絵の押し売りされてる— たけまる (@…

ハニポで収集したマルウェアで使用されているpackerを調べてみた。

はじめに ハニーポット dionaeaで収集した209の検体がどんなpackerを用いてるのか調べた。 運用中のdionaeaに対し、nmap -sSした結果は以下のとおり。 Starting Nmap 6.46 ( http://nmap.org ) at 2015-02-03 01:12 JST Nmap scan report for <ipアドレス> Host is up (0</ipアドレス>…

.pyじゃないPythonスクリプトをimportする

拡張子が.pyじゃないPythonスクリプトをimportできると、/usr/local/binにあった実行可能ファイルが実はPython製だった時にPythonから利用しやすくなって便利になる。シェルスクリプト書くより便利な気がする。impモジュールのload_souceを使うことでできる…

IOCについて

はじめに SECCON 2014 online予選 冬のforensic500 Confused analyteにてIOCに遭遇した。当時はIOCの名前を聞いたことがある程度だったので、軽く調べて まとめてみた。 本文 IOC(Indicators of Compromise)とは攻撃されたことを示す痕跡のことで、IOCをxml…

冬の陰鬱

試験勉強やりたくなさと作業したいけど試験勉強やらないといけなさが相まって、何もやりたくない日が続いてる。試験期間中に作業ガンガン出来る人すごいと思う。今日は勉強会行くのあきらめて、試験受けたのに芳しくなくてつらい。 ていうか勉強会を平日に開…

virtualboxのvmをリサイズした。

win7のvmの容量がきつくなってきたのでリサイズした。手間取ったのでメモ。 VBoxManage modifyhdコマンドでリサイズしようとするとなんかめっちゃエラー出た。 $ VBoxManage modifyhd './VirtualBox VMs/7_pro_64bit/7_pro_64bit.vdi' --resize 40960 VBoxMa…

jpegとかをpdfに変換したり、まとめたりできるim2pdfつくった。

背景 資料をスキャンしてみたときに、出力形式をpdfに、ファイル名をtest.pdfにしてもtest.pdf.jpgで出てきて、なえぽよだったので作った。スキャンむずかしい... im2pdfとは jpegとかのimageをpdfに変換するコマンドラインツール。複数のファイルをpdfにま…

メールサーバー立てて、メールアドレスを偽装してみた。

諸事情でcentos7でPostfixを使ってSMTPサーバー立ててみて、メールアドレスの偽装とか簡単にできるなあと思った。 Postfixの設定方法 /etc/postfix/main.cfでmydomainにメールサーバーのホスト名(@以下)を、myhostnameに自ドメインのドメイン名(@以前)を、ネ…

SECCON CTF 2014 online 予選(冬) writeup

CTF

チームで参加した。97位だった。全然解けなくてつらぽよだったし修行したい。 Get the key httpが散見されるので、export objectでファイルを取り出して開くと以下のようなhtmlがあった。これを見て、http://133.242.224.21:6809/nw100/key.htmlにアクセスし…

mixiのScrap challenge行ってきた

11月16日に行われたmixiのScrap challengeに行ってきました。Scrap Challenge 2014 | 株式会社ミクシィ 学生向けエンジニアイベント 倒壊で有名なヒカリエ。軽く感想とかやったこととか書く。 午前 午前中は、過去にmixiであった事案に絡めて軽くwebセキュリ…

ミニキャンプ in 北海道 行ってきた!!

11月1日、2日に行われたミニキャンプ in 北海道に行ってきました。 http://www.security-camp.org/minicamp/hokkaido2014.html メモリダンプやディスクダンプを読むというとても内容の濃い講義で、いい刺激となったので、もっと精進しないとなあという感じで…

vmを移したらwindowsがキーボードを誤認識した件

JPキーボードなPCに載ったwindows XPのVMをUSキーボードなPCに載せかえると、XPのコントロールパネルではUSキーボードと認識しているのに、JPキーボードと認識しているという怪奇現象に悩まされていたが、レジストリをいじることで解決できた。 HKEY_LOCAL_M…

macのaviraでの例外ディレクトリの設定方法

mac版のaviraでは残念なことに例外ディレクトリをGUIからは設定できない。 設定ファイルをいじってaviraをリスタートという2ステップで対処できた。 1 設定ファイルを書き換える /Applications/Avira.app/Contents/config内のavguard.confとavscan.confに以…

CSAW CTF 2014 writeup

CTF

trivia Shameless plug 問題文: This is the name of the new USENIX workshop that featured papers on CTFs being used for education. ググった。answer: 忘れた pop pop 問題文: This x86 instruction is an alias for pop eip/rip 知ってた。answer: RE…

jQueryのajax()で返り値を得る方法

favurlのurlをtweetする機能のtestをしていたら、This request looks like it might be automated. To protect our users from spam and other malicious activity, we can't complete this action right now. Please try again later. とか言われて待機時間…

chrome extentionのpopupを別窓で表示する。

chrome extentionのpopupとはブラウザの右上のアイコンを押すと出てくるアレである。popupをwindow.open()で表示すると、新しいタブで、でかい窓で表示されてしまいpopup感がなくなってしまうが、chrome.windows.createを使うことで、別窓でpopup感を保ちつ…

印刷物におけるsteganography

この記事(Printer steganography - Wikipedia, the free encyclopedia)によると、 プリンターの中には、タイムスタンプやシリアルナンバーを意味する黄色の小さいドットを印刷物に加えるものがあるらしい。また、これ(http://img.jp.fujitsu.com/downloads/j…

PNG向けのLSB方式のsteganographyを書いた。

LSB方式とは LSBとはleast significant bitの略で、末尾のビットのことである。 LSB方式のsteganographyとはLSBを書き換えることで、あまり見た目に影響させずにデータを隠すものである。 コード Python2、3両対応。RGBまたはRGBAなPNGにのみ対応。Pillowと…

Pythonでrot13とかunicode_escapeをエンコーディング指定できる

タイトルの通りでこんなコードが書ける。 # coding: rot13 cevag('Uryyb').rapbqr('rot13') #print('Uryyb').encode('rot13')と同じ # 出力結果は Hello # coding: unicode_escape \u0070\u0072\u0069\u006E\u0074\u0028\u0027\u0048\u0065\u006C\u006C\u006…

作ったPythonライブラリを任意のコマンド名で実行できるようにする

前、自作ライブラリをコマンドで使えるようにするときに知ったけど、完全に記憶から飛んでたのでメモ。たとえば、test.pyがあってそれをtestというコマンド名で実行したいときは、setup.pyを以下のように書くといい。 from setuptools import setup import o…

Python3ではexefile()がない

execfile()とはファイルに対して構文解釈を行う組み込み関数である。 Python3ではそのexefile()がない。execfile()は以下のように動作する。 >> execfile("test.py") # test.pyの中身は print 1+1 2 Python3ではexec()で代用する。 exec()は文字列に対し構文…

Pythonのsource distributionとeggとwheel

wheelファイルなるものを見かけたので調べてみた。 それぞれの作り方 source distribution python setup.py sdist egg setup.pyにfrom distutils.core import setup ではなく from setuptools import setupと書かないと生成されない 。 python setup.py bdis…

某英語学習サイトのコピペ防止方法

某英語学習サイトのreading問題のページではコピペ対策がなされている。 それがどういうものか解説しようと思う。コピーしようと、本文を選択しctrl + Cすると、コピー禁止と書かれたalertが出る。 これはhtmlが以下のようになっていることが原因であった。 <body bgcolor="#8BB67B" oncopy="alert('コピー禁止');return false;"></body>…

Web Speech API で使える音声一覧。

Web Speech APIとは ブラウザにしゃべらせたり、音声認識させたりできるAPI。Chromeではバージョン33から対応している。 先日、公開したfavurlをしゃべらせるのに使用している。 これを使ってしゃべらせるのに利用可能な音声一覧が載ってるサイトが見つから…

favurlを1.0.0にアップデートした。

chrome拡張 favurlをアップデートしました。Chrome Web Store - favurl前バージョンからの変更点は、background pagesのevent pages化による省メモリ化、検索機能の追加としゃべるようになったことです。話すTwitterふぁぼクライアントはおそらく世界初でし…

fixYabinaryをPython2, 3 両対応にした。

fixYabinaryとは やばいなりをfixするPythonライブラリ。foremost的な。 fixYabinary 0.2.0 : Python Package Index fixYabinaryというPythonライブラリを作った。 - 脱力系日記 Python2, 3 両対応にしたので、どう変えたかをメモ。 .encode("hex") ファイル…

JavaScriptでURI encodeする。

半年位前に書いて放置してた... URI encodeとは URI(URL)には使えない記号や文字を変換し使える形式にするというもの。 このURI encodeに使えそうなものとして、escape()、encodeURI()、encodeURIComponent()の3つの関数がある。 これらの関数を見ていく。 e…

fixYabinaryというPythonライブラリを作った。

この内容はチョット古いです。あきらめて英語版読みましょう。 fixYabinayとは やばいなりをfixするライブラリです。CTFに使えるかもしれない。 ばいなり、やばいなりー。 インストール方法 pip install fixYabinary 使い方 look(file_path) バイナリをバイナリ…

favurlというTwitterのふぁぼビューワーをつくった。

favurlとは ふぁぼったツイートの中でURL付きのもののみを表示するChrome拡張。 URLをあとで見るという意味でふぁぼったツイートを見る時に便利。ほかのツイートをふぁぼっても、あとで見たいツイートが埋もれる心配がない。また、Chromeを起動した時にChrom…

winでssh-keygenがhome/user/user_name/.sshを作ろうとしてきた

windowsでgitのssh keyを生成するためにssh-keygenを使ったが、home/user/user_name/.sshを作ろうとしてきたためうまくいかなかった。 failed make directoryが出た。これは、このコマンドを使うことで解決した。 setx HOME c:\Users\user_name //環境変数HO…

indexOfを使う際は配列の要素に注意

2つの配列の差分を取るコードをindexOfを使って書いた。 function get_diff(older, newer){ function callback_filter(element, index, array){ return (this.indexOf(element) === -1); // 要素が含まれていなければtrue } return newer.filter(callback_fi…

Javascriptのforがややこしい。

ややこしいので忘れたときのためにメモ。主に配列を走査するとき。 for inで配列の走査しちゃダメ Array.prototype.hoge = function() {}; for (var i in ['a', 'b', 'c']) { console.log(i); // 0, 1, 2, hoge が表示される } for in はオブジェクトのプロ…

Pythonにおける_(アンダーバー)

_(アンダーバー)から始まる変数はPythonでは不可視を意味し、意識しなくて良い(使われない)という意図を伝えることができるようである。関数とかクラスの頭に_を書いておくとhelp()を実行したときにスルーしてもらえる。[python] 年末大感謝祭!初心者脱出の…

githubからgistに飛ぶブックマークレット作った。

github眺めてると、この人のgistみたいなっていう時に、gistに行くボタンがなくて不便だったし作った。これでワンクリックでgistに行ける。これをブックマークバーに持ってくと使える。 goToGistただ単にリンクを貼るだけでは貼れなかったので、下のリンクの…

Processingで透過pngを作る。

createGraphicsは透過属性を持つのでそれを利用する。 PGraphics alpha; void setup() { size(400,400); alpha = createGraphics(400, 400, JAVA2D); } void draw() { image(alpha, 0,0); } void keyPressed() { alpha.save("alphatest.png"); println("alph…

自分の過去ツイートを取得してみたら数が合わなかったがツイ消しのせいだった。

タイトルのとおり。 3200件のツイートを取得出来るはずが、数件取得できなかった。 ツイ消しした分が取得できないのかなーと思い、ツイ消ししてから取得するとツイ消しした分だけ所得件数が減ったのでそうだと思われる。ツイ消ししても、ツイートがあったこ…

IDを用いたeventの設定の仕方。

wxPythonでIDを使ってeventの設定をしてみた。eventと、eventを設定する部品のIDを一緒にする。 # coding: UTF-8 import wx ID_EVENT = 101 class MyFrame(wx.Frame): def __init__(self, parent, ID, title): wx.Frame.__init__(self, parent, ID, title, s…

ついに美咲ちゃん買ったった!!

解析魔法少女美咲ちゃん マジカル・オープン!っていうプログラム解析入門?的な本がずっと欲しかったんだけど、割りとレアな本みたいで、この本を知った当初は定価2730円(税込み)なのにAmazonで中古5000円位で売ってて買う気がしなかった。解析魔法少女美咲ち…

wx.PySimpleApp() と wx.App()

wx.App()とwx.PySimpleApp()の違いを調べていると、 wxPython Style Guide - wxPyWikiを見つけた。 これの6項目を見ると、 6. wx.App() now has the same built in functionality as wx.PySimpleApp(),so there is no need for the latter. Note: The above …

list以外でも内包表記できる。

Python2では2.7から、3では3.1からできる。 もともとは3.1での新機能だったが、2.7にバックインポートされた。 setで内包表記 setだから重複要素が省ける。 >>> s = {v for v in 'ABCDABCD' if v not in 'CB'} >>> print s set(['A', 'D']) #list内包表記だ…

wxPythonでHTMLを出力する。

wxPythonでHTMLをプラウザで見るのと同じように出力する。 wx.html.HtmlWindowを使うことで可能となる。 # coding: UTF-8 import wx import wx.html class MyHtmlFrame(wx.Frame): def __init__(self, parent, title): wx.Frame.__init__(self, parent, -1, …

Ellipsisを知った。

Ellipsis(...)とは高次元配列のスライスで使われる特殊な値である。 numpy使いがよく使うようだ。公式ドキュメントでは 拡張スライス文と同時に用いられる特殊な値です。 と書かれているが、かなり不親切だと思う。 Python2ではEllipsisでEllipsisを返す。 >…

double colonを使ったスライスを知った。

double colonを使ったスライスを知ったのでメモ。Pythonのスライスはa[start:end:step]のように書くことができる。 a[::3]だと3つごとに要素を返す。 コード例 15 Extended Slicesより引用。 >>> L = range(10) >>> L[::2] [0, 2, 4, 6, 8] >>> L[::-1] [9, …

Processingでgifのtwitter icon作った。

tumblrながめてるとgif画像を作りたくなったので、なんとなくびびっときたグラフィック系に特化しているProcessingでgif画像つくってみた。 とりあえず、環境作って、ドットインストールとか入門サイトを眺める。void draw()が常にループしているなんて独特…

windowsのレジストリのSIDが複数表示される。

ユーザーが1人しかいないwindows XP, Vista 32bit, 7 64bit上でレジストリのHKEY_USERSのSIDが複数表示された。 Microsoft supportの[NT]Regedt32 に HKEY_USERS キーの SID が複数表示されるによると、Windows NT 4.0 の仕様によるもので、レジストリ エデ…

読書カテゴリの記事消した。

技術書読んだら感想をブログに書くということをしていたのだが、 技術書を読んでからブログを書くということが面倒になって、 最近は技術書を読んでもブログを書いてなかった。「ブログ書かないと」という妙な使命感を感じたり、 読書カテゴリに記事がないの…