2013-01-01から1年間の記事一覧
こういうの、設定してもだいたい忘れて使わなくなるのだけど、定着したものがいくつかあるので書いてみる。 l: ファイルにはless、ディレクトリにはlsを実行する 一つのコマンドで両方できるようにしておくと、判断の手間が省けて便利。 l() { # if the argu…
すみだセキュリティ勉強会 https://github.com/inaz2/SimpleHTTPProxy 以前ブログにも書いた、SimpleHTTPProxyの概要と利用例について話した。 Making a Proxy for Fun and Profit from inaz2 発表はデモを交えながらやったのだけど、それなりにウケていたの…
Pythonのstructモジュールを使うと、int型やdouble型の数字をバイト列に変換したり(pack)、バイト列から数字を取り出したり(unpack)できる。 これを利用して、double型の倍精度浮動小数点数がどのようなバイト列として表現されるかを確認してみる。 一般…
この頃、SSLの暗号化などにストリーム暗号RC4を使わないほうがいいといった話がよく聞かれるようになった。 2013年版のCRYPTREC暗号リストでも128bitのRC4が「運用監視暗号リスト」に入っているし、先日には、Microsoftからストリーム暗号RC4を使わないよう…
OpenSSLを使うと、次のようにして2048bitのRSA鍵が作成できる。 $ openssl genrsa 2048 Generating RSA private key, 2048 bit long modulus ......................+++ .................+++ e is 65537 (0x10001) -----BEGIN RSA PRIVATE KEY----- MIIEowI…
2048bitのRSA鍵を作成し、10年間(=3650日)有効な自己署名証明書を作成する。 $ openssl genrsa 2048 > server.key Generating RSA private key, 2048 bit long modulus .............................+++ ...+++ e is 65537 (0x10001) $ openssl req -new…
https://twitter.com/python_pep8 https://twitter.com/pep8_bot Pythonの標準コーディング規約 PEP 8 に書かれているフレーズを一定間隔でツイートする。 PEP 8、一度読んでもすぐ内容を忘れてしまうのだけど、いろいろ参考になることが書いてあるし、なん…
一つのターミナルの上で、複数の仮想ターミナルを切り替えて使うことができるscreenというソフトウェアがある。 このソフトウェアには画面分割機能 (Regions) があるのだけど、標準のキーバインドは次のようになっていて、使いやすくない(C-aはエスケープキ…
https://github.com/inaz2/SimpleHTTPProxy 簡単にカスタマイズできるHTTPプロクシが欲しかったのだけど、Webを探してみてもちょうどよいものがなかったので作った。 ターミナルで、PythonのSimpleHTTPServerモジュールと同じように $ python -m SimpleHTTPP…
HTML 4.01では、下のページで O がつけられているタグは省略することができる。 http://www.w3.org/TR/1999/REC-html401-19991224/index/elements.html 具体的には、 <table> <tbody> <tr> <th>header1</th> <th>header2</th> </tr> <tr> <td>content1</td> <td>content2</td> </tr> </tbody> </table> は次のように省略して書くことが許される。 <table> <tr> <th></th></tr></table>…
自宅で使っていたノートPCの内蔵DVDドライブが壊れ、ブルースクリーンが頻発するようになったので、ノートPCを新調した。 さらに、仮想マシンでGUIを使うことを考えると4GBでは物足りないと思い、メモリを4GB買い増して合計8GBにした。 4GBのときのWindowsエ…
すみだセキュリティ勉強会 https://github.com/inaz2/btsniff 以前ブログに書いた話の続きで作った、btsniffというスクリプトについて発表した。 おもしろかった。 やっぱり発表の場があると、間に合わせないと、という意識が働いてよい形にまとまる気がする…
http://apac-2013.pycon.jp/ja/ 野良Pythonエンジニアとしては行くしかない、ということで初参加。 プライベートで行くカンファレンスなので、自由に聴講レポートが書ける。すばらしい。 資料や動画は、タイムテーブルのページから確認できる。 特に動画は会…
久しぶりにCTFの参戦記。これまでもいくつか参加していたけど、ブログに書く余裕がなかったのであった。 write upではないので、詳細な解説はないです。 今回のCTFは、イランの ASIS CTF Finals 2013。Finalsだけど参加は誰でもできる。 ジャンルはWeb, Fore…
Jon Oberheide氏が使っているのをよく見るが、他の人のコードでも見かける。 起源はよくわからない。 print "[+] this is info log" print "[-] this is error log" 下記のような例を見ることもある。 print "[*] this is info log" print "[!] this is erro…
chown, chgrp, chmodコマンドで扱われる、いわゆるUnixパーミッションについて、理解を深めるために整理してみた。 ユーザとグループ Unix系システムでは、各ユーザは必ず一つのprimary groupに属する。 さらに、各ユーザはprimary groupのほかに、0個以上の…
https://github.com/inaz2/deluge-dht-collect 最近のBitTorrentクライアントにはDHTと呼ばれる仕組みが実装されており、ピア間でtorrent情報をやりとりすることによりトラッカーレスでダウンロードを行うことができるようになっている。 つまり、他のユーザ…
なんとなくWi-Fi通信のモニタリングをしてみた。 環境 $ uname -a Linux serv 2.6.32-358.11.1.el6.x86_64 #1 SMP Wed Jun 12 03:34:52 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux $ cat /etc/redhat-release CentOS release 6.4 (Final) 無線LANアダプタ用ド…
自宅サーバ(ノートPC)のCPU温度を計りたくなったので、この機会にmuninでグラフ化させてみることにした。 muninはCPU温度に限らず、ロードアベレージやトラフィックなどさまざまな情報をグラフ化し、Webブラウザから確認できるようにするサーバモニタリン…
mpdはデーモンとして動作し、各種クライアントプログラムからネットワーク経由で操作することができる音楽プレイヤーである。 今回は自宅サーバ(ノートPC)にスピーカーを繋げて、HDDにある音楽ファイルをスピーカーから流せるようにしてみる。 MPDroidなど…
USB HDD間で大容量のファイルコピーを行う必要が出てきたので、調べてみた。 rsyncでファイルコピーを行うには、次のようにすればよい。 コピー元のパスについて、最後にスラッシュをつけない場合はディレクトリごと、つける場合はディレクトリの中身ごとの…
Webを検索しても古いバージョンについての説明が多く、なかなか正しいやり方を見つけるのが難しいSambaの設定メモ。 環境 ここに書く内容は、Samba 3.6.0以降が対象です。 $ cat /etc/redhat-release CentOS release 6.4 (Final) $ smbd --version Version 3…
とりあえず軽く触ってみた。 インストール 公式サイトのダウンロードページからbootonlyのISOイメージをダウンロードし、公式のハンドブックを参考にインストールを行う。 ミラーサイト選択の際に「Snapshot Server Japan」を選ぶと、どういうわけかインスト…
http://www.gnu.org/software/emacs/manual/html_node/emacs/Special-Isearch.html 今さら気づいたのでメモ。 C-s などでインクリメンタルサーチ中に M-% を押すと、サーチ中の文字列を対象とした状態で文字列置換ができる。 M-C-s で正規表現サーチ中の場合…
自宅サーバ(ノートPC)をフォーマットして、KVM仮想化基盤を作った。 これで1台の物理サーバで複数のOSを動かせるようになった。 CPUが仮想化支援機能を有しているか確認 すでにインストールされているOSがLinuxであれば、次のようにして確認できる。 Intel…
http://legitbs.net/ 6/16 9:00 -- 6/18 9:00 JSTに行われたDEFCON CTF予選に参加。 相変わらずバイナリが読めないので、比較的多くのチームが解けていたWeb系問題ぐらいしかわからなかった。 バイナリ読解のノウハウが足りない…… 以下は適当な解法の説明。…
ssh-agentは公開鍵を保持して、認証処理を代行するデーモンプロセスである。 パスフレーズの入力を一度で済ませる ssh-agent経由でシェルを起動し、鍵を登録しておくことで、以降シェルを抜けるまでパスフレーズなしで認証できる。 $ ssh-agent bash $ ssh-a…
http://gitlab.org/ GithubのOSSクローンGitlabと、CI(継続的インテグレーション)サーバGitlab CIをインストールした。 Gitlabについては、プロジェクトを1個作らないとメンバーを追加できないなど多少気が利かないところはあるものの、とりあえずはこれで…
PerlでCPANモジュールをローカルインストールして使うには、Cartonを使う。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.2 LTS Release: 12.04 Codename: precise まず、apt等のパッケージマネージャ…
PythonでPyPIパッケージをローカルインストールして使うには、virtualenvを使う。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.2 LTS Release: 12.04 Codename: precise まず、apt等のパッケージマネ…