先のxmoovStreamを使ったサイト(とは言っても)にログイン+セッション維持機能を付けてみようと思う。 ログイン成功→memcache&cookieを使ったセッション維持です。やってみるべ。 ・ ・ ・ Memcacheのモデル書いた。 Cookieのモデル書いた。 セッションの…
xmoovStreamというPHP とFlashの動画配信フレームワークがあります。 それを使って自宅の動画を閲覧できるようにしたいのです。と、いうわけで、とりあえずxmoovStreamが対応しているフォーマットの動画を使ってテスト。 ましろ色シンフォニーのプロモーショ…
お久しぶりです。 前エントリから間があいてしまいました。 心療内科に通わなければならなくて、休んでいましたが、今日から復活です。とりあえず、最近購入した書籍の紹介。 WebDB vol.56 コーディングの基礎知識。"単一責任の原則"など プログラミング作法…
2〜3日に1回ほどのペースで記事にしていく(1エントリー完結で) PHPサイバーテロの技法→購入。 WEBDBなどの技術系雑誌も購入。 <OpenSocialアプリ> 友達IDを回帰取得したい。 ソフトウェア開発技術者の勉強もはじめた
サニタイズ ブラウザに出力する文字列に悪意のあるコードが仕込まれても良いように対策すること。 HTML出力用サニタイズとSQL用サニタイズがある。 HTTP リファラー あるサイトへのリンク元アドレス。どこのサイトから来たのがわかる。CSRF対策に使われるが…
自動紹介ツールを作ろうと思っています。 友達の友達リストからまだ友達になっていないユーザーを自動(定期的に)紹介するアプリ。 紹介文を送信できればいいな。API確認するとなんとなくできそうな予感。 Developper登録した アプリ登録する サンプルをいろ…
Apacheのログを漁るためのツールをJavaで作りました 普段PHP ばかり触っているので、Javaもたまには触りたい… ログを引っ張って行ごとにクラスに格納して表示 検索とかはありません 正規表現でパースするところが一番時間がかかった。 製作時間、4時間ほど
ウェブアプリケーションファイアウォールってなんだろうということで調べてみた 名前のとおり、ウェブアプリケーションに対する攻撃をブロックする役目e-wordsで調べると 「リバースプロキシとして動作するものとアクセスを透過させるものに分かれる。」 →大…
DNS Spoofing DNSを動的に変更することでセキュリティ制限を破る攻撃 FalshやJavaアプレットの通信先ドメイン制限が破れる →結果的に攻撃対象者のWebサーバーや限定されたネットワーク内のWebサーバーの情報が盗まれる可能性がある。 攻撃対象に罠サイト(サ…
メモ程度に残しておくもの SEのための情報セキュリティ対策用語集 http://www.chuu-information.com/security/word.html 技術用語サイトまとめ http://www.glova.co.jp/glossalink/dic_it.html 網羅的に書いててランキングもあるのでステキ http://e-words.j…
今までの攻撃PHP技術の件以外にも攻撃手法が載っていたので学んだことを書いていきます HTTPヘッダインジェクション ユーザー入力された値を元にHTTPヘッダを出力するロジックが存在する時に注意。header()関数の引数にGETの内容などを渡していると、ヘッダ…
304NotModifiedってリソースの変更がないのでクライアントからキャッシュを表示してください。という意味なのですが、ふと疑問に思ったことがあります「リソースの変更がない事をどうやってhttpdが判別しているのか」 「キャッシュの内容を変更しなくてよい…
telnetでHTTP通信する過程でHTTPについて調べていたのですが、 記事が大きくなったので別枠を設けました。 参考記事 HTTPリクエストヘッダ http://itpro.nikkeibp.co.jp/article/COLUMN/20080516/302045/?ST=oss&P=1 HTTPレスポンス http://itpro.nikkeibp.c…
クッキーがどのように行き来しているのか、観察してみますwikipedia →http://ja.wikipedia.org/wiki/HTTP_cookie Cookieについて http://www.studyinghttp.net/cookies#Cookie wiresharkで観察してみました。 PHPでsetcookie()関数を使用するとレスポンスヘ…
先のHTTPを手動で動かしてみようのエントリーで [TCP segment of a reassembled PDU]と表記されたパケットですが、 TCPで分割されたパケットでした。 テキストファイルをアップロードしたら分割されていました。 下の情報サイトの通りになってた。理解度が深…
手動でHTTP通信をしてみよう。 ということで、パケットキャプチャしながらtelnetでHTTP通信をしてみました。 HTTPでindex.htmlを表示してみよう まず、DocumentRootに適当なindex.htmlを生成してロードしたいと思います。 [xxxxxx@xxxxx ~]# telnet 192.168.…
※前回と同じく、主の理解していない部分が多く含まれています。 また、解はありませんので了承ください前回エラーハンドリングについて書いたのですが、そもそもユーザー定義メッセージとエラーレベルとは関係ないとの指摘をいただいたので、考え直してみま…
※この記事は主の勘違いとよくわかってないところが含まれています。 PHPではデバッグ機能が備わっていて、エラーが発生するとブラウザへ出力されます。 開発をする時にはこの機能は便利なのですが、運用段階では問題になることがあります。 開発段階と運用段…
先のファイルアップロード攻撃の対策について、画像掲示板が作れないという指摘を受けましたので、改めて考えてみました。ファイルアップロード攻撃では、公開フォルダをDocumentRoot下に置いてあり、アクセスされて直接閲覧されるのを防ぐためにランダムに…
セッションハイジャックに関連して調べていくうちに、暗号化形式について気になったので調べてみました。 できればコード上で適切な暗号化形式を選べるようになりたい。まず、暗号化形式には大まかに2つ形式があって〜公開鍵・秘密鍵の話はわかっている前提…
前回、セッションハイジャックの回で誤った解釈をしつつ進んでいるので、改めてセッション管理について考えたいと思います。まず、前回の課題として、 PHPにおけるセッション変数保持の仕組み Cookieに限らないセッション保持の仕組み を理解することです。…
ブラックリストよりもホワイトリスト 入力値を信用しない。UIで制限していても。 入力値を表示などに利用する場合はサニタイズ 入力値をSQLに組み込む場合は無力化。PDOが有効 ヘッダは改ざん可能を前提に考える Cookieに大切な(アカウントなどの)情報を入れ…
スパムメール踏み台攻撃とは、メールフォームを使用しているサイトの中で、フォームから送信メールアドレスを指定できる場合、リクエストを偽装することでスパムメールを送る攻撃です。 スパムメール踏み台攻撃 攻撃側 メールフォームの宛先をhiddenで送って…
注意 ※この記事は、主の勘違いしている情報も含まれています。 セッションハイジャック攻撃とは、不正なセッションキーを自分ではない利用者に使わせたり、逆に他の利用者のセッションキーを盗み出す攻撃のことです。セッションハイジャックを行うと、対象者…
ファイルアップロード攻撃です。 ファイルをアップロードさせた後、アップロードしたファイルを踏んでのPHPコードやJavascriptを実行させる攻撃です。 この攻撃の脅威は、 アップロードしたいファイルにスクリプトを仕込んで置く 転送したファイルを”システ…
外部コマンド実行攻撃についてです。 前期のeval攻撃と似たような攻撃手法ですが、防御が違うので別枠で設けてます。 さて、外部コマンド実行攻撃とは、PHP側にリクエストをもとにしたプログラム実行系コマンドが存在する場合、リクエストを実行系コマンドの…
eval利用攻撃とは、命名こそeval関数っぽいですが、 要するにPHPコードを利用した攻撃のことです。 URL内にPHPコードを直接含ませることで、内部処理中に任意のPHPコードを実行できる可能性があります。これもインクルード攻撃同様にrootを取られる可能性が…
インクルード攻撃です。 インクルード攻撃とは、GETなどの値からファイルを読み込ませるコードがの脆弱性をついた攻撃です。サイト内外から任意のファイルを読み込ませることができ、サイト情報(設定など)の情報が出力されてしまうことがあります。また、…
リクエスト分割攻撃です。 リクエスト分割攻撃とはHTTPリクエストに改行を含ませることでHTTPのリクエストを自在に操る攻撃です。 リクエスト分割 攻撃側 リクエスト分割攻撃はHTTPリクエストをURLエンコードした改行を含ませることでヘッダを複数記述でき、…
変数汚染攻撃です。 これは、register_globalが有効になっていた場合に、内部変数の値を書き換えることが得きる問題です。 セッションの値を変えたり、設定ファイルを変数から取得していた場合、設定ファイルの読み込み先を変えたりできるため、危険な脆弱性…