Submit Search
Upload
Web担当者が知っておくべきPHPとセキュリティ
•
7 likes
•
5,566 views
Yasuo Ohgaki
Follow
BOSS CONのWebノウハウシェア2013の講演資料です。SSRFやPHP5.5の新機能などを紹介しています。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 20
Download now
Download to read offline
Recommended
経営者・マネージャーが知るべき情報セキュリティ
経営者・マネージャーが知るべき情報セキュリティ
Yasuo Ohgaki
5分で解るセキュアコーディング
5分で解るセキュアコーディング
Yasuo Ohgaki
ソースコード検査に耐えるコードとは?
ソースコード検査に耐えるコードとは?
Yasuo Ohgaki
SQLインジェクション総”習”編
SQLインジェクション総”習”編
Yasuo Ohgaki
ネットワークから学ぶソフトウェアセキュリティの基礎
ネットワークから学ぶソフトウェアセキュリティの基礎
Yasuo Ohgaki
セキュアなソフトウェアアーキテクチャー
セキュアなソフトウェアアーキテクチャー
Yasuo Ohgaki
PHPカンファレンス2014セキュリティ対談資料
PHPカンファレンス2014セキュリティ対談資料
Yasuo Ohgaki
PHPにないセキュリティ機能
PHPにないセキュリティ機能
Yasuo Ohgaki
Recommended
経営者・マネージャーが知るべき情報セキュリティ
経営者・マネージャーが知るべき情報セキュリティ
Yasuo Ohgaki
5分で解るセキュアコーディング
5分で解るセキュアコーディング
Yasuo Ohgaki
ソースコード検査に耐えるコードとは?
ソースコード検査に耐えるコードとは?
Yasuo Ohgaki
SQLインジェクション総”習”編
SQLインジェクション総”習”編
Yasuo Ohgaki
ネットワークから学ぶソフトウェアセキュリティの基礎
ネットワークから学ぶソフトウェアセキュリティの基礎
Yasuo Ohgaki
セキュアなソフトウェアアーキテクチャー
セキュアなソフトウェアアーキテクチャー
Yasuo Ohgaki
PHPカンファレンス2014セキュリティ対談資料
PHPカンファレンス2014セキュリティ対談資料
Yasuo Ohgaki
PHPにないセキュリティ機能
PHPにないセキュリティ機能
Yasuo Ohgaki
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
Hiroshi Tokumaru
[デブサミ2012]趣味と実益の脆弱性発見
[デブサミ2012]趣味と実益の脆弱性発見
Yosuke HASEGAWA
インフラセキュリティブートキャンプ #seccamp
インフラセキュリティブートキャンプ #seccamp
Masahiro NAKAYAMA
安全なWebアプリケーションの作り方2018
安全なWebアプリケーションの作り方2018
Hiroshi Tokumaru
クラウドセキュリティ基礎 #seccamp
クラウドセキュリティ基礎 #seccamp
Masahiro NAKAYAMA
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
Hiroshi Tokumaru
クラウドセキュリティ基礎
クラウドセキュリティ基礎
Masahiro NAKAYAMA
徳丸本に載っていないWebアプリケーションセキュリティ
徳丸本に載っていないWebアプリケーションセキュリティ
Hiroshi Tokumaru
Hybrid appmeetssecurity kdl20171017-20
Hybrid appmeetssecurity kdl20171017-20
龍弘 岡
20141111 明日の認証会議資料(寺田)
20141111 明日の認証会議資料(寺田)
マジセミ by (株)オープンソース活用研究所
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
Hiroshi Tokumaru
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
Monaca
クロスプラットフォーム開発を可能にするMonaca
クロスプラットフォーム開発を可能にするMonaca
Monaca
他人事ではないWebセキュリティ
他人事ではないWebセキュリティ
Yosuke HASEGAWA
Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用
マジセミ by (株)オープンソース活用研究所
次世代プラットフォームのセキュリティモデル考察(前編)
次世代プラットフォームのセキュリティモデル考察(前編)
Yosuke HASEGAWA
クラウドセキュリティ基礎 @セキュリティ・ミニキャンプ in 東北 2016 #seccamp
クラウドセキュリティ基礎 @セキュリティ・ミニキャンプ in 東北 2016 #seccamp
Masahiro NAKAYAMA
20151114 _html5無料セミナー(OSC2015徳島)
20151114 _html5無料セミナー(OSC2015徳島)
Takahiro Kujirai
複数サービスを共存させるために 試行錯誤したこと
複数サービスを共存させるために 試行錯誤したこと
Nagao Shun
20150613 html5プロフェッショナル認定試験 レベル1技術解説セミナー
20150613 html5プロフェッショナル認定試験 レベル1技術解説セミナー
Takahiro Kujirai
How Would You Like Component Management System
How Would You Like Component Management System
Hidetaka Okamoto
Docker meetup tokyo_public_r001
Docker meetup tokyo_public_r001
cyberblack28 Ichikawa
More Related Content
What's hot
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
Hiroshi Tokumaru
[デブサミ2012]趣味と実益の脆弱性発見
[デブサミ2012]趣味と実益の脆弱性発見
Yosuke HASEGAWA
インフラセキュリティブートキャンプ #seccamp
インフラセキュリティブートキャンプ #seccamp
Masahiro NAKAYAMA
安全なWebアプリケーションの作り方2018
安全なWebアプリケーションの作り方2018
Hiroshi Tokumaru
クラウドセキュリティ基礎 #seccamp
クラウドセキュリティ基礎 #seccamp
Masahiro NAKAYAMA
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
Hiroshi Tokumaru
クラウドセキュリティ基礎
クラウドセキュリティ基礎
Masahiro NAKAYAMA
徳丸本に載っていないWebアプリケーションセキュリティ
徳丸本に載っていないWebアプリケーションセキュリティ
Hiroshi Tokumaru
Hybrid appmeetssecurity kdl20171017-20
Hybrid appmeetssecurity kdl20171017-20
龍弘 岡
20141111 明日の認証会議資料(寺田)
20141111 明日の認証会議資料(寺田)
マジセミ by (株)オープンソース活用研究所
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
Hiroshi Tokumaru
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
Monaca
クロスプラットフォーム開発を可能にするMonaca
クロスプラットフォーム開発を可能にするMonaca
Monaca
他人事ではないWebセキュリティ
他人事ではないWebセキュリティ
Yosuke HASEGAWA
Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用
マジセミ by (株)オープンソース活用研究所
次世代プラットフォームのセキュリティモデル考察(前編)
次世代プラットフォームのセキュリティモデル考察(前編)
Yosuke HASEGAWA
クラウドセキュリティ基礎 @セキュリティ・ミニキャンプ in 東北 2016 #seccamp
クラウドセキュリティ基礎 @セキュリティ・ミニキャンプ in 東北 2016 #seccamp
Masahiro NAKAYAMA
What's hot
(17)
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
[デブサミ2012]趣味と実益の脆弱性発見
[デブサミ2012]趣味と実益の脆弱性発見
インフラセキュリティブートキャンプ #seccamp
インフラセキュリティブートキャンプ #seccamp
安全なWebアプリケーションの作り方2018
安全なWebアプリケーションの作り方2018
クラウドセキュリティ基礎 #seccamp
クラウドセキュリティ基礎 #seccamp
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
クラウドセキュリティ基礎
クラウドセキュリティ基礎
徳丸本に載っていないWebアプリケーションセキュリティ
徳丸本に載っていないWebアプリケーションセキュリティ
Hybrid appmeetssecurity kdl20171017-20
Hybrid appmeetssecurity kdl20171017-20
20141111 明日の認証会議資料(寺田)
20141111 明日の認証会議資料(寺田)
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonaca
クロスプラットフォーム開発を可能にするMonaca
他人事ではないWebセキュリティ
他人事ではないWebセキュリティ
Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用
次世代プラットフォームのセキュリティモデル考察(前編)
次世代プラットフォームのセキュリティモデル考察(前編)
クラウドセキュリティ基礎 @セキュリティ・ミニキャンプ in 東北 2016 #seccamp
クラウドセキュリティ基礎 @セキュリティ・ミニキャンプ in 東北 2016 #seccamp
Similar to Web担当者が知っておくべきPHPとセキュリティ
20151114 _html5無料セミナー(OSC2015徳島)
20151114 _html5無料セミナー(OSC2015徳島)
Takahiro Kujirai
複数サービスを共存させるために 試行錯誤したこと
複数サービスを共存させるために 試行錯誤したこと
Nagao Shun
20150613 html5プロフェッショナル認定試験 レベル1技術解説セミナー
20150613 html5プロフェッショナル認定試験 レベル1技術解説セミナー
Takahiro Kujirai
How Would You Like Component Management System
How Would You Like Component Management System
Hidetaka Okamoto
Docker meetup tokyo_public_r001
Docker meetup tokyo_public_r001
cyberblack28 Ichikawa
初心者のためのWeb標準技術
初心者のためのWeb標準技術
Shogo Sensui
PHPにないセキュリティ機能
PHPにないセキュリティ機能
Yasuo Ohgaki
PHPにないセキュリティ機能
PHPにないセキュリティ機能
Yasuo Ohgaki
スクレイピングその後
スクレイピングその後
Tomoki Hasegawa
基礎演習V 河野ゼミ紹介20161025
基礎演習V 河野ゼミ紹介20161025
義広 河野
HTML5から始まる技術革新
HTML5から始まる技術革新
Wakasa Masao
初めてのWebプログラミング講座
初めてのWebプログラミング講座
DIVE INTO CODE Corp.
Sharoid Service Menu
Sharoid Service Menu
sharoid
レビューの自動化事業について
レビューの自動化事業について
ssuserf1e090
レビューの自動化事業について
レビューの自動化事業について
ssuserf1e090
アプリケーションのシフトレフトを実践するには
アプリケーションのシフトレフトを実践するには
Riotaro OKADA
TestFlightみたいなのを自作する
TestFlightみたいなのを自作する
Tomoki Hasegawa
OAuth Security Workshop 2017 #osw17
OAuth Security Workshop 2017 #osw17
Tatsuo Kudo
04 コンテナ管理ツール比較 public_r001
04 コンテナ管理ツール比較 public_r001
cyberblack28 Ichikawa
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
y-uti
Similar to Web担当者が知っておくべきPHPとセキュリティ
(20)
20151114 _html5無料セミナー(OSC2015徳島)
20151114 _html5無料セミナー(OSC2015徳島)
複数サービスを共存させるために 試行錯誤したこと
複数サービスを共存させるために 試行錯誤したこと
20150613 html5プロフェッショナル認定試験 レベル1技術解説セミナー
20150613 html5プロフェッショナル認定試験 レベル1技術解説セミナー
How Would You Like Component Management System
How Would You Like Component Management System
Docker meetup tokyo_public_r001
Docker meetup tokyo_public_r001
初心者のためのWeb標準技術
初心者のためのWeb標準技術
PHPにないセキュリティ機能
PHPにないセキュリティ機能
PHPにないセキュリティ機能
PHPにないセキュリティ機能
スクレイピングその後
スクレイピングその後
基礎演習V 河野ゼミ紹介20161025
基礎演習V 河野ゼミ紹介20161025
HTML5から始まる技術革新
HTML5から始まる技術革新
初めてのWebプログラミング講座
初めてのWebプログラミング講座
Sharoid Service Menu
Sharoid Service Menu
レビューの自動化事業について
レビューの自動化事業について
レビューの自動化事業について
レビューの自動化事業について
アプリケーションのシフトレフトを実践するには
アプリケーションのシフトレフトを実践するには
TestFlightみたいなのを自作する
TestFlightみたいなのを自作する
OAuth Security Workshop 2017 #osw17
OAuth Security Workshop 2017 #osw17
04 コンテナ管理ツール比較 public_r001
04 コンテナ管理ツール比較 public_r001
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
More from Yasuo Ohgaki
忘れられているデータセキュリティ
忘れられているデータセキュリティ
Yasuo Ohgaki
アプリ開発者に大きな影響 2017年版OWASP TOP 10
アプリ開発者に大きな影響 2017年版OWASP TOP 10
Yasuo Ohgaki
PHP5.6からPHP7.0への移行
PHP5.6からPHP7.0への移行
Yasuo Ohgaki
データベースセキュリティ
データベースセキュリティ
Yasuo Ohgaki
Postgre SQL 9.3 新機能
Postgre SQL 9.3 新機能
Yasuo Ohgaki
Rails4 security
Rails4 security
Yasuo Ohgaki
More from Yasuo Ohgaki
(6)
忘れられているデータセキュリティ
忘れられているデータセキュリティ
アプリ開発者に大きな影響 2017年版OWASP TOP 10
アプリ開発者に大きな影響 2017年版OWASP TOP 10
PHP5.6からPHP7.0への移行
PHP5.6からPHP7.0への移行
データベースセキュリティ
データベースセキュリティ
Postgre SQL 9.3 新機能
Postgre SQL 9.3 新機能
Rails4 security
Rails4 security
Web担当者が知っておくべきPHPとセキュリティ
1.
Web担当者が知っておく べきPHPとセキュリティ Electronic Service Initiative,
Ltd. 1
2.
自己紹介 • 大垣 靖男
(Yasuo Ohgaki) • Twitter/Facebook/LinkedIn/Google: yohgaki • エレクトロニック・サービス・イニシアチブ • 岡山大学 大学院 非常勤講師 • PHP技術者認定機構 顧問 • BOSS-CON JAPAN PHP SA CTO Electronic Service Initiative, Ltd. 2
3.
2012年を振り返る • 注目すべき攻撃手法TOP10 1. CRIME
(SSL暗号解読) 攻撃手法は年々 2. SSRF攻撃 複雑化&高度化 3. Chromeアドオンハック 4. PHPSESSIDブルートフォース 5. 脅威とJavaScriptのブレンド 6. クロスサイトポート攻撃 7. HTML5クライアントアプリの恒久的バックドア 8. CAPTCHAリライディング攻撃 9. XSS: httponlyクッキーの取得 2012年版 10.HTTP VerbトンネリングなどによりOData攻撃 TOP TEN WEB HACKING TECHNIQUES OF 2012 WhiteHat Security Electronic Service Initiative, Ltd. 3
4.
セキュリティ研究者の傾向 • Webクライアントの攻撃から、 攻撃対象のWebクライアントのネットワークへ • 企業ネットワーク内部のファイアーウォール回避 •
複数の脆弱性を組み合わせた複合型攻撃 Electronic Service Initiative, Ltd. 4
5.
SSRF攻撃 • SSRFにXXE、SQL・OSコマンド・スクリプトインジェク ションなどを利用し企業内ネットワークの奥深くまで 攻撃 ※XXE –
XML External Entityを利用した攻撃 SSRFは内部ネットワークから攻撃する クラシックな攻撃パターンだが研究者は インターネットから攻撃する手法を考案 Electronic Service Initiative, Ltd. 5
6.
SSRF攻撃とは • SSRF =
Server Side Request Forgery • リクエストAをサービスAに送信 • サービスAはリクエストBをサービスBに送信 • リクエストBの幾つかフィールドをリクエストAで操作可能 リクエストA サービスA リクエストB B1 A1 A3 A1 A2 A3 サービスB 攻撃 B2 Electronic Service Initiative, Ltd. 6
7.
SSRF攻撃の手法 単純なリクエスト /ui/BufferOverview?server=172.16.1.1&port=31337&dispatcher=&target= XXE <!ENTITY xxe SYSTEM
“http://172.16.1.1:80/someservice”> SQLインジェクション SELECT * FROM OPENQUERY(HostB, ‘SELECT * FROM @@version’) (MS SQL) SELECT * FROM myTable@HostB (Oracle) SELECT dblink_send_query('host=127.0.0.1 dbname=HostB user=¥'attacker¥' ','select version();') (PostgreSQL) OSコマンド system(‘wget http://172.16.1.1/someservie’) 攻撃 Electronic Service Initiative, Ltd. 7
8.
SSRF攻撃 • XXEで可能と紹介されている例 • • • • ファイルとディレクトリへのアクセス リモートポートスキャン 他のシステムをHTTPで攻撃 HTTP以外のプロトコルで他のシステムを攻撃 • PHPのXXE修正 •
SOAP - Disabled external entities loading (CVE2013-1643, CVE-2013-1824) 2013年3月 PHP5.4.13/5.3.23 Electronic Service Initiative, Ltd. 8
9.
SSRF攻撃 • SSRFはコマンドやリクエストを実行できる脆弱性が ある場合、実行可能 • XXE、SQLインジェクション、OSコマンドインジェク ション、スクリプト実行 •
PHPは埋め込み型言語であるため、スクリプト実行 に脆弱になりやすい • PHP5.3.4以降 • Paths with NULL in them (foo¥0bar.txt) are now considered as invalid Electronic Service Initiative, Ltd. 9
10.
脅威とJavaScriptのブレンド • SSRFと同類の攻撃手法 JavaScriptによる内部ネットワークスキャン JSScan、JS-Recon、jslanscanner HTML5 Cross Origin
Resource Sharing, File API, XHR2, Blobs リモートからルータなどの乗っ取りが可能 不正ログインからファームウェア書き換えまで Electronic Service Initiative, Ltd. 10
11.
クロスサイトポートスキャン • SSRFを補助する攻撃として利用可能 • 他のサイトにリクエストを送信するアプリ •
ネットワークスキャナー、フィンガープリンティングに利用 • http://172.16.1.1:5432/path/file 攻 撃 スキャン 攻 撃 Electronic Service Initiative, Ltd. 11
12.
内部ネットワーク攻撃の脅威 • 企業内部ネットワークのアプリ・システムが攻撃対 象となる脅威が増加中 • 企業内のWebアプリにも公開アプリ同様に十分な セキュリティ対策が必要 Electronic
Service Initiative, Ltd. 12
13.
PHPSESSIDブルートフォース • PHPのセッション管理機構がデフォルトでは擬似乱 数発生器によってセッションIDを生成する • 古いPHPセッションの乱数はメルセンヌ・ツイスター •
擬似乱数発生器の脆弱性を利用してセッションID の推測 • 元々ベストプラクティスは • session.entropy_file = /dev/urandom • PHP5.4以降は • UNIX:/dev/{urandom,arandom}がデフォルト • Windows: session.entropy_lengthを設定→CryptAPI Electronic Service Initiative, Ltd. 13
14.
Next PHP • 新しいパスワードハッシュ関数 •
password_hash() • crypt関数のラッパー関数 • 自動的に最新・最強のパスワードハッシュを生成 • ラッパー関数で古いPHPでも可能 • PBKDF2 - hash_pbkdf2()も追加 Electronic Service Initiative, Ltd. 14
15.
Next PHP • finallyサポート •
異常終了時のリソースクリーンナップ • PCRE – e修飾子廃止 • preg_replace_callback() • ロゴ表示の廃止 • フィンガープリンティング対策 • PgSQL – リテラル、識別子エスケープAPI • pg_escape_literal()、pg_escape_identifier() • セッションアダプション脆弱性修正(?) • session.strict_mode=true Electronic Service Initiative, Ltd. 15
16.
Future PHP • 未サポートのHTTPメソッドサポート? •
GET,POST + DELETE、PUT • $_SERVER[‘REQUEST_METHOD’]と parse_str(file_get_contents(‘php://input’),$var)で 現在も対応可能 • 入力バリデーションの強化? • 単機能からフレームワーク • スクリプトオンリー読み込み? • 埋め込み言語特有の脆弱性除去 • 他の言語から見ると最大の弱点 Electronic Service Initiative, Ltd. 16
17.
セキュリティ維持に何をすべきか? セキュリティ維持には全てのフェーズでの セキュリティ対策が必要不可欠 企画 運用 設計 全フェーズに セキュリティ対策 が必要 テスト 実装 全フェーズにセキュリティ対策の レビューが効果的 Electronic Service Initiative,
Ltd. 17
18.
セキュリティ維持に何をすべきか? • セキュリティ対策に最も重要な事とは? • セキュリティ対策の本質を知る •
セキュリティ対策=学習・トレーニング・実践・レビュー 知る 確認 企画 運用 訓練 実践 全てのフェーズへ 適用 テスト Electronic Service Initiative, Ltd. 設計 実装 18
19.
What We Planned? 知る 確認 企画 訓練 実践 意識改革 運用 設計 テスト 実装 実践 Electronic
Service Initiative, Ltd. セキュリティ確立 19
20.
• ご清聴ありがとうございました。 お問い合わせ BOSS CON
JAPAN http://www.boss-con.jp/contact/ または エレクトロニック・サービス・イニシアチブ info@es-i.jp Electronic Service Initiative, Ltd. 20
Download now