Laravel 5 で制御文字を禁止するバリデーションルールを追加する

Laravel 5 で制御文字を禁止するバリデーションルールを追加する

ウェブアプリケーションにもいろいろありますが、制御文字を受け入れる必要のないパラメータは割と多いんじゃないかと思います。そのようなパラメータでは、最初から制御文字を受け入れないようになっていれば、セキュリティ面のリスクも減ります。そこで今回は、Laravel 5 を使ったウェブアプリケーションで、制
Read more…

PHPで画像ファイルかどうかを検証する(Laravel)

PHPで画像ファイルかどうかを検証する(Laravel)

特定のファイルが画像ファイルかどうかを検証するPHPの関数を書いてみました。ウェブサイトにアップロードされた画像ファイルを検証する時などに使うことを想定しています。 GIF/JPEG/PNG のみ対象としています。 Laravelを使っていることを前提としているので、エラー発生時には ErrorEx
Read more…

Laravel 5 で入力パラメータ値の文字エンコーディングをチェックするMiddlewareを追加する

Laravel 5 で入力パラメータ値の文字エンコーディングをチェックするMiddlewareを追加する

セキュリティのリスクを少しでも減らすために、想定している文字エンコーディング以外の文字がパラメータとして送信されても受け付けないようにします。 1.以下のミドルウェアを作成する app/Http/Middleware/EncodingValidateParams.php として、パラメータ値の文字エ
Read more…

他人のGithubレポジトリを fork して新たにブランチを追加し、それを composer で取り込んで使う方法

他人のGithubレポジトリを fork して新たにブランチを追加し、それを composer で取り込んで使う方法

手順 1. Github上で 他人のリポジトリ(fork元のリポジトリ)を forkする 2. 1のリポジトリをローカルに git clone する。 3. 新たにブランチを作り機能を追加する。 4. 機能を追加したらコミットして、このブランチを git push する。 5. このブランチを取り込
Read more…

ウェブアプリケーションを開発しながら、手軽に脆弱性検査する方法

ウェブアプリケーションを開発しながら、手軽に脆弱性検査する方法

以前、OWASP ZAP に追加された attack mode の概要 というエントリを書きましたが、このATTACK modeを使った簡単なセキュリティ検査の手順をメモしておきます。この機能を使えば、ウェブアプリケーションの開発中にZAPが勝手に脆弱性スキャンしてくれます。 ※ この機能が追加され
Read more…