タグ

ブックマーク / chaipa.hateblo.jp (14)

  • WEBプログラマー必見!WEB脆弱性基礎知識最速マスター - 燈明日記

    以下は、WEBプログラマー用のWEB脆弱性の基礎知識の一覧です。 WEBプログラマーの人はこれを読めばWEB脆弱性の基礎をマスターしてWEBプログラムを書くことができるようになっているかもです。 また、WEB脆弱性の簡易リファレンスとしても少し利用できるかもしれません。 WEBアプリケーションを開発するには、開発要件書やプログラム仕様書通りに開発すれば良いというわけにはいきません。 そう、WEB脆弱性を狙う悪意のユーザにも対処しないといけないのです。 今回、WEBアプリケーションを開発にあたってのWEB脆弱性を、以下の一覧にまとめてみました。 このまとめがWEBアプリケーション開発の参考になれば幸いです。 インジェクション クロスサイト・スクリプティング セッション・ハイジャック アクセス制御や認可制御の欠落 ディレクトリ・トラバーサル(Directory Traversal) CSRF(

    WEBプログラマー必見!WEB脆弱性基礎知識最速マスター - 燈明日記
  • WEB脆弱性シリーズ見直し! - 小池啓仁 ヒロヒト応援ブログ By はてな

    今日は、以下のWEB脆弱性シリーズに対して、誤字や言い回しを見直しました。 WEB脆弱性のインジェクションとは? - 燈明日記 WEB脆弱性のクロスサイト・スクリプティングとは - 燈明日記 WEB脆弱性のセッション・ハイジャックとは - 燈明日記 WEB脆弱性のアクセス制御や認可制御の欠落とは - 燈明日記 WEB脆弱性のディレクトリ・トラバーサル(Directory Traversal)とは? - 燈明日記 WEB脆弱性のCSRF(クロスサイト・リクエスト・フォージェリ)とは? - 燈明日記 HTTP Cookiesとは? - 燈明日記 セキュアなSQL - 燈明日記

    WEB脆弱性シリーズ見直し! - 小池啓仁 ヒロヒト応援ブログ By はてな
  • HTTP Cookiesとは? - 小池啓仁 ヒロヒト応援ブログ By はてな

    今回、セキュアなWEBの勉強ということで、HTTP Cookieをテストしてみました。 なにを今更…と思っているかもしれませんが、クッキーを知っているつもりでも、実は知らなかったりしますよ。 なのでとりあえず、以下の2つをリンクしときます。 studyinghttp.net Cookie(クッキー)の届く範囲 (あいまいモード) HTTP Cookiesとは? HTTPだけだとステートレスなので、複数ページに遷移するセッション管理ができません。 そこで、ブラウザ(PC)内にステータスを記憶しておき、その記憶をサーバーとやり取りすれば、セッション管理ができるようになりますね。 その記憶のことをクッキーといいます。 しかし、クッキーはこれだけではないのです。 クッキーの有効期限やクッキーを送り返すURLやドメイン名を指定することができるのです。 特に、URLやドメイン名が指定できるということは

    HTTP Cookiesとは? - 小池啓仁 ヒロヒト応援ブログ By はてな
  • セキュアなSQL - 小池啓仁 ヒロヒト応援ブログ By はてな

    テストでSQLインジェクションを体験しました。当にDBがクリア出来てしまいました! ということで、以下の『安全なSQLの呼び出し方』をリンクしときます。 http://www.ipa.go.jp/security/vuln/documents/website_security_sql.pdf 尚、MS SQL Serverの場合は、以下の2点を気をつければ大丈夫のようです。 文字列リテラルの場合は、『'』をエスケープします。 数値リテラルの場合は、数値以外の文字が混入されないようにします。 他のフリー系DBは、なんかもっと厄介ですね(リンク先を見てください)。 ちなみに、『安全なウェブサイトの作り方』もリンクしときます。 http://www.ipa.go.jp/security/vuln/documents/website_security.pdf

    セキュアなSQL - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Microsoft SQL Server 2005でSQLをコメントに出来ない件 - 小池啓仁 ヒロヒト応援ブログ By はてな

    Microsoft SQL Server 2000では、SQLクエリアナライザがあり、SQLのWhere文の条件を変えるときにコメント(頭に--)を利用します。 しかし、Microsoft SQL Server 2005では、コメントにしても、実行するとSQLが最適化されて、コメント等は削除されてしまうのです。 実はコレ、SQLペインで、SQL Server 2000でもSQLクエリアナライザでなく、Enterprise ManagerのSQLペインと同じなのです。 ただ、SQL Server 2005では、SQLペインとSQLクエリアナライザが統合されているのです。 以下は、SQL Server 2005での『SQLペイン』と『SQLクエリアナライザ』の起動方法です。 SQLペインは、表を開いた後に「SQLペインの表示」でタブが起動され、SQLを入力できます。しかし、SQLをコメントにす

    Microsoft SQL Server 2005でSQLをコメントに出来ない件 - 小池啓仁 ヒロヒト応援ブログ By はてな
  • 竹島とは何か? - 小池啓仁 ヒロヒト応援ブログ By はてな

    昨日、2月22日は「竹島の日」とのことでした。 竹島問題は、歴史的に込み入っています。分かり易く整理してみました。 むかしむかし、日韓国の間に2つの島がありました。 日寄りの島を「松島」(日の領土)といいました。 韓国寄りの島を「竹島」(韓国の領土)といいました。 フランス人は、韓国の領土「竹島」をみつけて「アルゴノート島」と名づけました。 イギリス人は、韓国の領土「竹島」をみつけて「ダジュレー島」と名づけました。 そして、「シーボルト事件」で有名なシーボルトが天保11(1840)年に日地図を作った時に以下のようにしました。 「アルゴノート島」(日名:竹島) 「ダジュレー島」(日名:松島) つまり、「ダジュレー島」は「竹島」なのに間違って「松島」としてしまったのです。 その後、「アルゴノート島」と「ダジュレー島」が同じ島だと分かり、「アルゴノート島」は無かったものとされました

    竹島とは何か? - 小池啓仁 ヒロヒト応援ブログ By はてな
  • 正規表現基礎文法最速マスター With Perl - 小池啓仁 ヒロヒト応援ブログ By はてな

    Perlでの正規表現のサンプルと文法一覧です。 他の言語をある程度知っている人はこれを読めば正規表現の基礎をマスターして正規表現を書くことができるようになっています。 簡易リファレンスとしても少し利用できると思います。 他言語からの人は、正規表現を使う機会がなかったかもしれませんが・・・。 Perlでは、正規表現を使うための言語と言っても過言ではありません。 正規表現を使うことによりテキスト(文字列)編集処理が飛躍的に楽になるのです。 では、まずはじめにテストデータ、family.txt を用意します。 このテストデータを元にしてサンプルプログラムを踏まえて解説をしていきますね。 ・family.txtファイルの内容 macha koike yachu koike chaichan koike hiro koike mama koike papa koike koike 6 ni-bo-

    正規表現基礎文法最速マスター With Perl - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Perlオブジェクト基礎文法最速マスター - 小池啓仁 ヒロヒト応援ブログ By はてな

    Perl5でのオブジェクトの基礎を解説したいと思います。 Perlでのオブジェクト指向と言えば、モダンPerl系ではMooseモジュール等なのですが、今回は、あくまでも基礎編です。 Perlで最速にオブジェクトをマスターするには、まず、「リファレンス」と「use宣言」と「bless」の3つが理解できていないとなりません。 なぜかと言うと、Perlでのオブジェクトはblessされたリファレンスなのです。また、Perlでのクラスはモジュールなのです。そのモジュールでの一番の謎は、use宣言なのです。 なので、はじめにこの3つを理解してから、そのあと「オブジェクト」と「オブジェクト指向」について解説していきます。 つまり、以下の順番です。 リファレンスについて use宣言について blessについて Perlでのオブジェクトについて Perlでのオブジェクト指向について ■リファレンスについて

    Perlオブジェクト基礎文法最速マスター - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Perlで .NET Framework クラスを利用する - 小池啓仁 ヒロヒト応援ブログ By はてな

    膨大な .NET FrameworkクラスをPerlでも利用できないかと考えました。 Perlでは、Windows用のPerlとしてActivePerlが利用できる。 ActivePerlでは、PerlScriptというスクリプトが利用できる。 PerlScriptでは、WScript Objectがデフォルトで利用できる。 WScript Objectでは、.NET Framework クラスが利用できる。 よって、Perlで .NET Framework クラスを利用することができるのです! 以下は、ヒントレベルで申し訳ありませんが、そのサンプルです。 .NET FrameworkのSystem.Collections.ArrayLisクラスを利用しています。 ◆サンプル <job id="PerlForNetFramework"> <script language="PerlScri

    Perlで .NET Framework クラスを利用する - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Perlでのuse宣言について - 小池啓仁 ヒロヒト応援ブログ By はてな

    Perlをやり始めると、requireはすぐ分かるんだけれど、useって謎だなぁって思いますね! 今回は、そんなuseの謎に迫ります。 はじめに、requireは、C言語でいう%includeと同じで別ファイルにあるソースを実行時にあたかも自ソースとして読み込みます。 つぎに、useは、実行前(コンパイル時)にあたかも自ソースとして読み込みます。 実行前というのは、Perlではコマンド起動時にコンパイルしてから実行するという2段階方式になっているのです。 つまり、useはコンパイル時に実行され、requireはコンパイル後に実行されるのです。 そして、読み込んだソース(モジュール)にpackage宣言がない場合、useとrequireでは、これ以外の違いはありません。 しかし、モジュールにpackage宣言があると、ちょっとややっこしくなるのです。 まず、モジュールでなく、メインソースの方

    Perlでのuse宣言について - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Perlの謎(その4):コンテキストで意味が変わる関数 - 小池啓仁 ヒロヒト応援ブログ By はてな

    今回は、他言語経験者にとって、Perlでの最大の謎『コンテキスト』です。 まず、Perlでは、スカラー変数と配列変数とハッシュ変数があります。 スカラー変数には、文字列や数値、リファレンス等のスカラー値を代入します。 配列変数やハッシュ変数には、リスト値を一気に代入します。 Perlでは、スカラー変数にスカラー値を代入することをスカラーコンテキストといいます。 また、配列変数とハッシュ変数にリスト値を一気に代入することをリストコンテキストといいます。 つぎに、関数は、引数を入力*1として結果をリターン値として返します。 このリターン値が、代入先の変数のスカラー変数か配列変数またはハッシュ変数かによって、スカラー値を返したり、リスト値を返したりするのです。 つまり、コンテキストによって同じ関数でもリターン値が変わるのです。 まぁ、すべての関数がそうなるわけではないのですが、リスト値を処理する

    Perlの謎(その4):コンテキストで意味が変わる関数 - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Perlの謎(その2):『特殊変数 $_』とは - 小池啓仁 ヒロヒト応援ブログ By はてな

    まず、以下のソースを見てください。 use strict; use warnings; while (<DATA>) { if (/^h.*e$/) { print; # hogeを表示する } } __END__ hoge foo Perl初心者や他言語から来た人が・・・実はかつての自分が、このソースを見た時に???のオンパレードでした。 これを以下のようにすると・・・。 use strict; use warnings; while ($_ = <DATA>) { if ($_ =~ /^h.*e$/) { print $_; # hogeを表示する } } __END__ hoge foo かなり分かりやすくなりますね。 このように、Perlでは、デフォルトで『$_』という特殊変数を用いるようになっているのです。 そして、『$_』は省略できるのです。 そして、ちょっとベテランになると

    Perlの謎(その2):『特殊変数 $_』とは - 小池啓仁 ヒロヒト応援ブログ By はてな
  • JPerl Advent Calendar 2008 - 小池啓仁 ヒロヒト応援ブログ By はてな

    なんか、凄く濃いPerlコンテンツを見つけたので、ご紹介します。 ライターは、日Perl界隈では結構有名な人達らしい・・・(弾さんと竹迫さんぐらいしか、私は知らないけど)。 定数の展開 - 1日目 myのリファレンス - 2日目 $@はグローバル変数 - 3日目 無名スカラー変数のレファレンス - 4日目 効率的な変数宣言 - 5日目 テスト演算子をつかいまくる - 6日目 コマンドラインスイッチと特殊変数を使いまくる - 7日目 ワンライナーで画像収集 - 8日目 全てのコードにテストを(標準入力乗っ取り編) - 9日目 SQLiteを使ったテストのtips - 10日目 Carp::Clan でエラーハンドリングのススメ - 11日目 非破壊な s/// のススメ - 12日目 Win32::GuiTest で WindowsGUI アプリをハックしよう - 13日目 ヒアド

    JPerl Advent Calendar 2008 - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Perlでの正規表現を再勉強 - 小池啓仁 ヒロヒト応援ブログ By はてな

    Perlでの正規表現が、解かりやすく、良くまとまっているWebページを見つけましたのでご紹介します。 http://ja.wikibooks.org/wiki/Perl/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE 私も最後の方は知らないこと(拡張正規表現や拡張構文)があって勉強になりました。 凄く良くまとまっていると思います。 しかし、最近は自分で組むより、正規表現もCPANのモジュールを使うのがいいらしい・・・。 http://d.hatena.ne.jp/tokuhirom/20090321/1237629165 また、しかし、CPANで探すってのも大変な気がする(英語苦手)。 しかし、validation libraryって何?(直訳:検証ライブラリ?) 私には、正規表現よりTest::Moreモジュールの勉強になりました(謎)。

    Perlでの正規表現を再勉強 - 小池啓仁 ヒロヒト応援ブログ By はてな
  • 1