Open1
webの代表的な脆弱性
- File upload vulnerability
- ファイルアップロードにてサーバー上で動作するソースを含むファイルをアップロードされ、不正に実行される
- directory traversal
- リソースを取得するエンドポイントにてバックスラッシュを入れて/etc/passwdなどを読むこと
- そもそもchromeだとバックスラッシュが入らないし、laravelでpublic以外でルートにないものは404になる
- フレームワークを使っていないケースでは明示的な対策を入れないと危ないケースが確かにありそう
- リソースを取得するエンドポイントにてバックスラッシュを入れて/etc/passwdなどを読むこと
- SQLインジェクション
- ユーザの入力をもとにクエリ実行する箇所があれば、入力値を工夫することで出すべきではない他のユーザのデータなどが流出する
- XSS
- ユーザがPOSTしたデータを保存し、その保存されたデータを他の場所でそのまま表示することがある場合
- JSが含まれていた場合にブラウザによってJSが実行されてしまうことがある
- その結果、JSから取得できるクッキー情報などを使ってそのユーザとしてログインされる可能性がある
- その他、JSから取得できる箇所に個人情報があれば取得される可能性がある
- ユーザがPOSTしたデータを保存し、その保存されたデータを他の場所でそのまま表示することがある場合
- XSRF
- ユーザがウェブサイトAにログインして、セッション情報をクッキーに残す
- 悪質なウェブサイトにアクセスし、フォーム送信などでセッションのクッキー情報を元にウェブサイトAにIDとパスワード変更などのリクエストを送るようにする
- 悪質なウェブサイトに管理者がウェブサイトAにログインできるようになる
- Insecure Direct Object Reference
- クエリパラメータのユーザIDをもとにページを表示する場合は、ユーザIDを変更して直接URLに打ち込むことで、他のユーザの情報が流出する可能性がある