昔、どこかで知ったのですが、ブラウザでは10進数表記のIPアドレスでも解釈できるようです。 具体的には、以下のアドレスはGoogleのトップページにアクセスできます。(Ubuntu/WindowsのFirefoxで確認) http://1123637603/ どういう原理かというと、、、 (10進数) 1123637603 ↓ (2進数) 01000010111110010101100101100011 ↓ (8ビットで区切る) 01000010.11111001.01011001.01100011 ↓ (8ビット毎に10進数に変換) 66.249.89.99こんな感じ。 以下digの結果が参考。66.249.89.99がGoogleのトップ。 $ dig www.google.co.jp 〜〜〜省略〜〜〜 www.google.co.jp. 287498 IN CNAME www.goo
こんにちは、中川です。 先日、GoogleからWebアプリケーション向けの自動セキュリティスキャナ「Skipfish」が公開されたので、社内で利用しているCakePHPのアプリで試してみました。 Skipfish( http://code.google.com/p/skipfish/ )は、Webアプリケーションの脆弱性、SQLインジェクションやクロスサイトスクリプティング等を自動的に検出してくれるApache License 2.0のライセンスで公開されているオープンソースのツールです。 必要なライブラリは以下とのこと。 * GNU C Compiler * GNU Make * GNU C Library (including development headers) * zlib (including development headers) * OpenSSL (including
はじめに 以前、知人のやっているBeProudという会社を手伝ったのですが、BeProudでは、エンジニアの主要なコミュニケーション手段としてSkypeが使われていました。当時、趣味でたまたまSkypeのAPIについて調べていたので、悪戯っ気を出して、開発環境に即席でSkype APIを使ったbotを設置してみたところ、思いのほか好評を博し、いまやインフラと言っても過言ではない存在 *1 *2と化したようです。 まあそんな状況を眺めつつ、自宅のサーバにSkype botを設置して、お気に入りのSkypeチャットにもbotを加えてみたところ、これも結構好評だったので、興味ありそうな人向けに作成方法をまとめることにします。 Skype Public API Skype Public APIとは、Skypeを外部からコントロールするためのインターフェイスです。 Skype Public APIを
Node.js といえば非同期処理です.そして非同期処理と言えばコールバック. そんなわけで (どんなわけで?),すぐにこんなコードになったりしがちですよね. http://stackoverflow.com/questions/3538156/file-i-o-in-every-programming-language/3538377#3538377 fs.writeFile(path, "hello", function (error) { fs.open(path, "a", 0666, function (error, file) { fs.write(file, "\nworld", null, "utf-8", function () { fs.close(file, function (error) { fs.readFile(path, "utf-8", function
補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブ、はてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2010年9月27日に公開されたもので、当時の徳丸の考えを示すものを、基本的に内容を変更せずにそのまま転載するものです。 補足終わり PHPカンファレンス2010にて「文字コードに起因する脆弱性とその対策」というタイトルで喋らせていただきました。プレゼンテーション資料をPDF形式とslideshare.netで公開しています。 文字コードのセキュリティというと、ややこしいイメージが強くて、スピーカーの前夜祭でも「聴衆の半分は置いてきぼりになるかもね」みたいな話をしていたのですが、意外にも「分かりやすかった」等の好意的な反応をtwitter等でいただき、驚くと共に喜んでいます。土曜にPHPカンファレンスに来られるような方は意識が高いというの
Kamuiには Object::Containerを再実装してゴニョゴニョしたKamui::Containerというモジュールがあります。 このKamui::Contaierは基本Object::Containerと同じ挙動をするわけなのですが、 何点か違う箇所があります。 Object::Containerの場合 package MyContainer; use Object::Container -base; ... 1; # in your script: use MyContainer 'obj'; obj->register( mech => sub { WWW::Mechanize->new }); obj->get('mech'); obj('mech'); # shortcut to obj->get('mech')こんな感じでつかったりします。 use MyContain
InnoDB関連でよくある質問のひとつに「テーブルのメンテナンスは何をすればいいんですか?」というものがある。InnoDBはMySQL 5.5でデフォルトストレージエンジンとなるため、InnoDBのテーブルメンテナンス計画を立ようと思う機会も増えることだろう。そこで、今日はInnoDBのテーブルメンテナンスの各種方法となぜそうしなければいけないかという理由を解説しようと思う。 ANALYZE TABLEテーブルメンテナンスの代名詞といえば、インデックス統計情報の更新ではなかろうか。運用を続けるうちに、知らず知らずインデックス統計情報が狂ってしまい、思うような性能が出ない。RDBMSにはそのような問題がつきものであるが、InnoDBの場合、ANALYZE TABLEは不要である。なぜなら、InnoDBが自発的に統計情報を更新するからだ。InnoDBは以下の条件に適合すると、ANALYZE T
4. 徳丸浩の自己紹介 • 経歴 – 1985年 京セラ株式会社入社 – 1995年 京セラコミュニケーションシステム株式会社(KCCS)に出向・転籍 – 2008年 KCCS退職、HASHコンサルティング株式会社設立 • 経験したこと – 京セラ入社当時はCAD、計算幾何学、数値シミュレーションなどを担当 – その後、企業向けパッケージソフトの企画・開発・事業化を担当 – 1999年から、携帯電話向けインフラ、プラットフォームの企画・開発を担当 Webアプリケーションのセキュリティ問題に直面、研究、社内展開、寄稿などを開始 – 2004年にKCCS社内ベンチャーとしてWebアプリケーションセキュリティ事業を立ち上げ • その他 – 1990年にPascalコンパイラをCabezonを開発、オープンソースで公開 「大学時代のPascal演習がCabezonでした」という方にお目にかかること
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く