Enviar búsqueda
Cargar
Apache Struts2 における任意の Java メソッド実行の脆弱性
•
4 recomendaciones
•
3,300 vistas
J
JPCERT Coordination Center
Seguir
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 35
Recomendados
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
土岐 孝平
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
土岐 孝平
ZabbixのAPIを使って運用を楽しくする話
ZabbixのAPIを使って運用を楽しくする話
Masahito Zembutsu
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
Nmapの真実(続)
Nmapの真実(続)
abend_cve_9999_0001
O/Rマッパーによるトラブルを未然に防ぐ
O/Rマッパーによるトラブルを未然に防ぐ
kwatch
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
Sho A
30分で分かる!OSの作り方
30分で分かる!OSの作り方
uchan_nos
Recomendados
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
土岐 孝平
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
土岐 孝平
ZabbixのAPIを使って運用を楽しくする話
ZabbixのAPIを使って運用を楽しくする話
Masahito Zembutsu
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
Nmapの真実(続)
Nmapの真実(続)
abend_cve_9999_0001
O/Rマッパーによるトラブルを未然に防ぐ
O/Rマッパーによるトラブルを未然に防ぐ
kwatch
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
Sho A
30分で分かる!OSの作り方
30分で分かる!OSの作り方
uchan_nos
システム監視のアラート大量発生を抑えるZabbixトリガー「依存関係」機能の紹介
システム監視のアラート大量発生を抑えるZabbixトリガー「依存関係」機能の紹介
Haruki Yamashita
ruby-ffiについてざっくり解説
ruby-ffiについてざっくり解説
ota42y
サーバ構築を自動化する 〜Ansible〜
サーバ構築を自動化する 〜Ansible〜
Yui Ito
既存サーバを後からAnsibleで構成管理する
既存サーバを後からAnsibleで構成管理する
KeijiUehata1
Kubernetes環境で実現するWebアプリケーションセキュリティ
Kubernetes環境で実現するWebアプリケーションセキュリティ
NGINX, Inc.
Session管理とRailsのcookie store
Session管理とRailsのcookie store
Kamimura Taichi
試験にでるSpring
試験にでるSpring
土岐 孝平
Ganglia のUIにGrafanaを追加する話
Ganglia のUIにGrafanaを追加する話
KLab Inc. / Tech
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Shinsuke Sugaya
lazy var の特徴を知る #cocoa_kansai #cswift
lazy var の特徴を知る #cocoa_kansai #cswift
Tomohiro Kumagai
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き
土岐 孝平
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
Yoshinori Matsunobu
性能測定道 実践編
性能測定道 実践編
Yuto Hayamizu
Powershell et les techniques de remoting
Powershell et les techniques de remoting
Microsoft Technet France
中小規模サービスのApacheチューニング
中小規模サービスのApacheチューニング
勲 國府田
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
Masahito Zembutsu
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
Yahoo!デベロッパーネットワーク
ビュー索引のキホン(後編)
ビュー索引のキホン(後編)
Haruyuki Nakano
Puppet入門
Puppet入門
Tomita Akiyoshi
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
Apache CommonsのHttpClientに おけるSSLサーバ証明書検証不備 (CVE-2012-5783)
Apache CommonsのHttpClientに おけるSSLサーバ証明書検証不備 (CVE-2012-5783)
JPCERT Coordination Center
Apache ActiveMQにおける認証処理不備の脆弱性(AMQ-1272)
Apache ActiveMQにおける認証処理不備の脆弱性(AMQ-1272)
JPCERT Coordination Center
Más contenido relacionado
La actualidad más candente
システム監視のアラート大量発生を抑えるZabbixトリガー「依存関係」機能の紹介
システム監視のアラート大量発生を抑えるZabbixトリガー「依存関係」機能の紹介
Haruki Yamashita
ruby-ffiについてざっくり解説
ruby-ffiについてざっくり解説
ota42y
サーバ構築を自動化する 〜Ansible〜
サーバ構築を自動化する 〜Ansible〜
Yui Ito
既存サーバを後からAnsibleで構成管理する
既存サーバを後からAnsibleで構成管理する
KeijiUehata1
Kubernetes環境で実現するWebアプリケーションセキュリティ
Kubernetes環境で実現するWebアプリケーションセキュリティ
NGINX, Inc.
Session管理とRailsのcookie store
Session管理とRailsのcookie store
Kamimura Taichi
試験にでるSpring
試験にでるSpring
土岐 孝平
Ganglia のUIにGrafanaを追加する話
Ganglia のUIにGrafanaを追加する話
KLab Inc. / Tech
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Shinsuke Sugaya
lazy var の特徴を知る #cocoa_kansai #cswift
lazy var の特徴を知る #cocoa_kansai #cswift
Tomohiro Kumagai
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き
土岐 孝平
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
Yoshinori Matsunobu
性能測定道 実践編
性能測定道 実践編
Yuto Hayamizu
Powershell et les techniques de remoting
Powershell et les techniques de remoting
Microsoft Technet France
中小規模サービスのApacheチューニング
中小規模サービスのApacheチューニング
勲 國府田
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
Masahito Zembutsu
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
Yahoo!デベロッパーネットワーク
ビュー索引のキホン(後編)
ビュー索引のキホン(後編)
Haruyuki Nakano
Puppet入門
Puppet入門
Tomita Akiyoshi
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
La actualidad más candente
(20)
システム監視のアラート大量発生を抑えるZabbixトリガー「依存関係」機能の紹介
システム監視のアラート大量発生を抑えるZabbixトリガー「依存関係」機能の紹介
ruby-ffiについてざっくり解説
ruby-ffiについてざっくり解説
サーバ構築を自動化する 〜Ansible〜
サーバ構築を自動化する 〜Ansible〜
既存サーバを後からAnsibleで構成管理する
既存サーバを後からAnsibleで構成管理する
Kubernetes環境で実現するWebアプリケーションセキュリティ
Kubernetes環境で実現するWebアプリケーションセキュリティ
Session管理とRailsのcookie store
Session管理とRailsのcookie store
試験にでるSpring
試験にでるSpring
Ganglia のUIにGrafanaを追加する話
Ganglia のUIにGrafanaを追加する話
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
lazy var の特徴を知る #cocoa_kansai #cswift
lazy var の特徴を知る #cocoa_kansai #cswift
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
性能測定道 実践編
性能測定道 実践編
Powershell et les techniques de remoting
Powershell et les techniques de remoting
中小規模サービスのApacheチューニング
中小規模サービスのApacheチューニング
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ビュー索引のキホン(後編)
ビュー索引のキホン(後編)
Puppet入門
Puppet入門
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Similar a Apache Struts2 における任意の Java メソッド実行の脆弱性
Apache CommonsのHttpClientに おけるSSLサーバ証明書検証不備 (CVE-2012-5783)
Apache CommonsのHttpClientに おけるSSLサーバ証明書検証不備 (CVE-2012-5783)
JPCERT Coordination Center
Apache ActiveMQにおける認証処理不備の脆弱性(AMQ-1272)
Apache ActiveMQにおける認証処理不備の脆弱性(AMQ-1272)
JPCERT Coordination Center
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
JPCERT Coordination Center
MySQL Connector/J における SQL インジェクションの脆弱性
MySQL Connector/J における SQL インジェクションの脆弱性
JPCERT Coordination Center
JBoss Application Server におけるディレクトリトラバーサルの脆弱性
JBoss Application Server におけるディレクトリトラバーサルの脆弱性
JPCERT Coordination Center
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
JPCERT Coordination Center
JRE標準ライブラリの脆弱性事例を理解する (AtomicReferenceArrayクラス と Type Confusion)
JRE標準ライブラリの脆弱性事例を理解する (AtomicReferenceArrayクラス と Type Confusion)
JPCERT Coordination Center
Apache Axis2におけるXML署名検証不備
Apache Axis2におけるXML署名検証不備
JPCERT Coordination Center
Apache Tomcat における クロスサイトリクエストフォージェリ (CSRF) 保護メカニズム回避の脆弱性
Apache Tomcat における クロスサイトリクエストフォージェリ (CSRF) 保護メカニズム回避の脆弱性
JPCERT Coordination Center
分散ストリーム処理フレームワーク Apache S4
分散ストリーム処理フレームワーク Apache S4
AdvancedTechNight
Java EE8 Report
Java EE8 Report
Norito Agetsuma
Cve 2013-0422
Cve 2013-0422
abend_cve_9999_0001
Java/Androidセキュアコーディング
Java/Androidセキュアコーディング
Masaki Kubo
Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...
Shotaro Suzuki
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
Shinya Mochida
React Native GUIDE
React Native GUIDE
dcubeio
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (JavaDayTokyo2015)
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (JavaDayTokyo2015)
JPCERT Coordination Center
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
JustSystems Corporation
R5 3 type annotation
R5 3 type annotation
EIICHI KIMURA
明日から使える Java SE 7
明日から使える Java SE 7
Yuichi Sakuraba
Similar a Apache Struts2 における任意の Java メソッド実行の脆弱性
(20)
Apache CommonsのHttpClientに おけるSSLサーバ証明書検証不備 (CVE-2012-5783)
Apache CommonsのHttpClientに おけるSSLサーバ証明書検証不備 (CVE-2012-5783)
Apache ActiveMQにおける認証処理不備の脆弱性(AMQ-1272)
Apache ActiveMQにおける認証処理不備の脆弱性(AMQ-1272)
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
MySQL Connector/J における SQL インジェクションの脆弱性
MySQL Connector/J における SQL インジェクションの脆弱性
JBoss Application Server におけるディレクトリトラバーサルの脆弱性
JBoss Application Server におけるディレクトリトラバーサルの脆弱性
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
JRE標準ライブラリの脆弱性事例を理解する (AtomicReferenceArrayクラス と Type Confusion)
JRE標準ライブラリの脆弱性事例を理解する (AtomicReferenceArrayクラス と Type Confusion)
Apache Axis2におけるXML署名検証不備
Apache Axis2におけるXML署名検証不備
Apache Tomcat における クロスサイトリクエストフォージェリ (CSRF) 保護メカニズム回避の脆弱性
Apache Tomcat における クロスサイトリクエストフォージェリ (CSRF) 保護メカニズム回避の脆弱性
分散ストリーム処理フレームワーク Apache S4
分散ストリーム処理フレームワーク Apache S4
Java EE8 Report
Java EE8 Report
Cve 2013-0422
Cve 2013-0422
Java/Androidセキュアコーディング
Java/Androidセキュアコーディング
Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
React Native GUIDE
React Native GUIDE
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (JavaDayTokyo2015)
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (JavaDayTokyo2015)
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
R5 3 type annotation
R5 3 type annotation
明日から使える Java SE 7
明日から使える Java SE 7
Más de JPCERT Coordination Center
いま改めて製品開発者の脆弱性対応について考える ~情報セキュリティ早期警戒パートナーシップを運用する調整機関の視点から~
いま改めて製品開発者の脆弱性対応について考える ~情報セキュリティ早期警戒パートナーシップを運用する調整機関の視点から~
JPCERT Coordination Center
安全なプラグインに必要なこと: 脆弱性届出状況に見る傾向と対策 (WordCampTokyo 2017)
安全なプラグインに必要なこと: 脆弱性届出状況に見る傾向と対策 (WordCampTokyo 2017)
JPCERT Coordination Center
DLL読み込みの問題を読み解く
DLL読み込みの問題を読み解く
JPCERT Coordination Center
WordBench東京 7月勉強会「夏のLT大会!」『WordPress とバックアップの話』
WordBench東京 7月勉強会「夏のLT大会!」『WordPress とバックアップの話』
JPCERT Coordination Center
CERT コーディングスタンダードご紹介 (OSC2017@Osaka)
CERT コーディングスタンダードご紹介 (OSC2017@Osaka)
JPCERT Coordination Center
脆弱性情報はこうしてやってくる
脆弱性情報はこうしてやってくる
JPCERT Coordination Center
OWASP ASVS と Cheat Sheet シリーズ (日本語版) のご紹介 (OSC2016Hokkaido)
OWASP ASVS と Cheat Sheet シリーズ (日本語版) のご紹介 (OSC2016Hokkaido)
JPCERT Coordination Center
Android Platform の URLConnection に HTTP ヘッダインジェクションの脆弱性
Android Platform の URLConnection に HTTP ヘッダインジェクションの脆弱性
JPCERT Coordination Center
Case Studies and Lessons Learned from SSL/TLS Certificate Verification Vulner...
Case Studies and Lessons Learned from SSL/TLS Certificate Verification Vulner...
JPCERT Coordination Center
クロスサイトリクエストフォージェリ(CSRF)とその対策
クロスサイトリクエストフォージェリ(CSRF)とその対策
JPCERT Coordination Center
デブサミ2015 事例から学ぶAndroidアプリのセキュアコーディング「SSL/TLS証明書検証の現状と対策」
デブサミ2015 事例から学ぶAndroidアプリのセキュアコーディング「SSL/TLS証明書検証の現状と対策」
JPCERT Coordination Center
ソフトウェアセキュリティ保証成熟度モデル
ソフトウェアセキュリティ保証成熟度モデル
JPCERT Coordination Center
Lessons (to be) Learned from Handling OpenSSL Vulnerabilities
Lessons (to be) Learned from Handling OpenSSL Vulnerabilities
JPCERT Coordination Center
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
JPCERT Coordination Center
Android Secure Coding
Android Secure Coding
JPCERT Coordination Center
Blojsom におけるクロスサイトスクリプティングの脆弱性
Blojsom におけるクロスサイトスクリプティングの脆弱性
JPCERT Coordination Center
Javaセキュアコーディングセミナー東京第2回演習の解説
Javaセキュアコーディングセミナー東京第2回演習の解説
JPCERT Coordination Center
Javaセキュアコーディングセミナー東京第4回演習の解説
Javaセキュアコーディングセミナー東京第4回演習の解説
JPCERT Coordination Center
Javaセキュアコーディングセミナー東京第4回講義
Javaセキュアコーディングセミナー東京第4回講義
JPCERT Coordination Center
Javaセキュアコーディングセミナー東京第3回演習
Javaセキュアコーディングセミナー東京第3回演習
JPCERT Coordination Center
Más de JPCERT Coordination Center
(20)
いま改めて製品開発者の脆弱性対応について考える ~情報セキュリティ早期警戒パートナーシップを運用する調整機関の視点から~
いま改めて製品開発者の脆弱性対応について考える ~情報セキュリティ早期警戒パートナーシップを運用する調整機関の視点から~
安全なプラグインに必要なこと: 脆弱性届出状況に見る傾向と対策 (WordCampTokyo 2017)
安全なプラグインに必要なこと: 脆弱性届出状況に見る傾向と対策 (WordCampTokyo 2017)
DLL読み込みの問題を読み解く
DLL読み込みの問題を読み解く
WordBench東京 7月勉強会「夏のLT大会!」『WordPress とバックアップの話』
WordBench東京 7月勉強会「夏のLT大会!」『WordPress とバックアップの話』
CERT コーディングスタンダードご紹介 (OSC2017@Osaka)
CERT コーディングスタンダードご紹介 (OSC2017@Osaka)
脆弱性情報はこうしてやってくる
脆弱性情報はこうしてやってくる
OWASP ASVS と Cheat Sheet シリーズ (日本語版) のご紹介 (OSC2016Hokkaido)
OWASP ASVS と Cheat Sheet シリーズ (日本語版) のご紹介 (OSC2016Hokkaido)
Android Platform の URLConnection に HTTP ヘッダインジェクションの脆弱性
Android Platform の URLConnection に HTTP ヘッダインジェクションの脆弱性
Case Studies and Lessons Learned from SSL/TLS Certificate Verification Vulner...
Case Studies and Lessons Learned from SSL/TLS Certificate Verification Vulner...
クロスサイトリクエストフォージェリ(CSRF)とその対策
クロスサイトリクエストフォージェリ(CSRF)とその対策
デブサミ2015 事例から学ぶAndroidアプリのセキュアコーディング「SSL/TLS証明書検証の現状と対策」
デブサミ2015 事例から学ぶAndroidアプリのセキュアコーディング「SSL/TLS証明書検証の現状と対策」
ソフトウェアセキュリティ保証成熟度モデル
ソフトウェアセキュリティ保証成熟度モデル
Lessons (to be) Learned from Handling OpenSSL Vulnerabilities
Lessons (to be) Learned from Handling OpenSSL Vulnerabilities
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
Android Secure Coding
Android Secure Coding
Blojsom におけるクロスサイトスクリプティングの脆弱性
Blojsom におけるクロスサイトスクリプティングの脆弱性
Javaセキュアコーディングセミナー東京第2回演習の解説
Javaセキュアコーディングセミナー東京第2回演習の解説
Javaセキュアコーディングセミナー東京第4回演習の解説
Javaセキュアコーディングセミナー東京第4回演習の解説
Javaセキュアコーディングセミナー東京第4回講義
Javaセキュアコーディングセミナー東京第4回講義
Javaセキュアコーディングセミナー東京第3回演習
Javaセキュアコーディングセミナー東京第3回演習
Último
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
Último
(11)
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
Apache Struts2 における任意の Java メソッド実行の脆弱性
1.
Copyright©2013 JPCERT/CC All
rights reserved. 「Javaアプリケーション脆弱性事例調査資料」について この資料は、Javaプログラマである皆様に、脆弱性を身 近な問題として感じてもらい、セキュアコーディングの 重要性を認識していただくことを目指して作成していま す。 「Javaセキュアコーディングスタンダード CERT/Oracle版」と合わせて、セキュアコーディングに 関する理解を深めるためにご利用ください。 JPCERTコーディネーションセンター セキュアコーディングプロジェクト secure-coding@jpcert.or.jp 1 Japan Computer Emergency Response Team Coordination Center 電子署名者 : Japan Computer Emergency Response Team Coordination Center DN : c=JP, st=Tokyo, l=Chiyoda-ku, email=office@jpcert.or.jp, o=Japan Computer Emergency Response Team Coordination Center, cn=Japan Computer Emergency Response Team Coordination Center 日付 : 2013.06.26 10:59:43 +09'00'
2.
Apache Struts 2
における任意の Java メソッド実行の脆弱性 CVE-2012-0838 JVNDB-2012-000012 2
3.
Copyright©2013 JPCERT/CC All
rights reserved. Apache Struts 2とは Java のWebアプリケーションを開発するための オープンソースのフレームワーク アプリケーションの開発効率やメンテナンス性 を向上させることを目的としている 3 Apache Struts2 JAVAアプリケーションWebサーバークライアント
4.
Copyright©2013 JPCERT/CC All
rights reserved. Apache Struts 2とは 4 • Model-View-Controller (MVC)アーキテクチャを 採用 • アプリケーションの開発者はModelとViewを実 装する。 Model: ビジネスロジックの実装 (javaで実装) View: 画面デザイン (jspで実装) Controller: クライアントからの入力イベントを処理し、ModelやViewに振り分ける(Struts2で実装) .jsp .javaクライアント Webサーバー
5.
Copyright©2013 JPCERT/CC All
rights reserved. 脆弱性の概要 —クライアントから送信されてきた文字列の処理で発生す るエラーの取り扱いに不備が存在。 —具体的には、数値型の変数に対して文字列が送信されて きた際に発生する変換エラー処理。 —送信する文字列を細工することで、任意のJavaメソッド が実行可能となる。 5
6.
Copyright©2013 JPCERT/CC All
rights reserved. 脆弱性が悪用された場合のリスク 任意のJavaメソッドが実行できるため、Runtime::exec メソッドを使えばOSコマンドを実行することが可能 アプリケーションの外部から、アプリケーションが稼働 するサーバ上で任意のコマンドが実行可能となり、サー バを乗っ取られる可能性がある 6 Runtime::exec() Webサーバ Javaメソッド 実行!!細工された文字列
7.
Copyright©2013 JPCERT/CC All
rights reserved. Struts2 内部で変換エラーが発生した場合の処理 7 ※Struts2付属のサンプルアプリ「showcase」を元に処理を解説する ① クライアントから、エラーの原因となる文字列を含むリクエストが送信 される。 ② Struts上で、文字列→数値に変換する際にエラーが発生し、エラー(例外) 処理を行う。 ③ エラー処理で、変換エラーの原因となった文字列が保持される。 ④ jsp側からエラーの原因となった文字列が取り出され、レスポンスの一部 としてクライアントへ送信される。 HelloWorld Long型 empId エラー値 HelloWorld .jsp エラー値 HelloWorld HelloWorld エラー empIdは数値です HelloWorld empId= HelloWorld ① ② ③ ④ クライアント エラー発生!
8.
Copyright©2013 JPCERT/CC All
rights reserved.8 private Long empId; : public Long getEmpId() { return empId; } : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : Javaファイル(Model) /showcase/action/EmployeeAction.java Jspファイル(View) /empmanager/editEmployee.jsp 変数empIdをModel(.java)か ら取得して表示する。 数値型(Long)の変数empId が存在し、クライアントか ら送信されたパラメータ empIdの値が格納される 数値型の変数empIdに対して文字列を送信するとエラーが発生する。 クライアントからのリクエスト サンプルアプリ「showcase」
9.
Copyright©2013 JPCERT/CC All
rights reserved. ①クライアントからエラーの原因となる文字列を含むリクエストが送信される 9 GET /?empId=HelloWorld HTTP/1.1 Host: localhost:8080 <form action=‘/’ method=‘GET’> : <input type=‘text’ name=‘empId’ value=‘HelloWorld’> : </form> HTTPリクエスト 上記HTTPリクエストを送信するためのHTML パラメータempIdの値と して”HelloWorld”とい う文字列を送信する。 (empIdはサーバ側では 数値型として扱われるこ とに注意。) empId= HelloWorld ① クライアント
10.
Copyright©2013 JPCERT/CC All
rights reserved. ②文字列→数値に変換する際にエラー発生、エラー(例外)処理を行う 10 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : クライアントから送信されてきたパラメータempIdの値”HelloWorld”を、 数値型変数empIdに対して挿入する際に変換エラーが発生し、エラー処理 が行われる。 変換エラー処理はConversionErrorInterceptorクラスのinterceptメソッド 内でエラー例外処理が行われる。 ConversionErrorInterceptor.java HelloWorld Long型 empId ②
11.
Copyright©2013 JPCERT/CC All
rights reserved. ③エラー処理で、変換エラーの原因となった文字列が保持される 11 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : HashMap<Object, Object> fakie = null; : String propertyName = (String) entry.getKey(); Object value = entry.getValue(); : fakie.put(propertyName, getOverrideExpr(invocation, value)); : ConversionErrorInterceptor.java エラーとなった変数名が <クラス名.変数名> という形式で取得され、変数 propertyNameに格納される。 currentEmployee.empId
12.
Copyright©2013 JPCERT/CC All
rights reserved.12 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : HashMap<Object, Object> fakie = null; : String propertyName = (String) entry.getKey(); Object value = entry.getValue(); : fakie.put(propertyName, getOverrideExpr(invocation, value)); : 変数valueには変換エラーとなっ た文字列の値が代入される。 “HelloWorld” ③エラー処理で、変換エラーの原因となった文字列が保持される ConversionErrorInterceptor.java
13.
Copyright©2013 JPCERT/CC All
rights reserved.13 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : HashMap<Object, Object> fakie = null; : String propertyName = (String) entry.getKey(); Object value = entry.getValue(); : fakie.put(propertyName, getOverrideExpr(invocation, value)); : protected Object getOverrideExpr(ActionInvocation invocation, Object value) { return "'" + value + "'"; } getOverrideExprメソッド getOverrideExprメソッドでは第2引数を’(シング ルクオート)で囲って返却する処理を行う “HelloWorld”‘HelloWorld’ ③エラー処理で、変換エラーの原因となった文字列が保持される ConversionErrorInterceptor.java
14.
Copyright©2013 JPCERT/CC All
rights reserved.14 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : HashMap<Object, Object> fakie = null; : String propertyName = (String) entry.getKey(); Object value = entry.getValue(); : fakie.put(propertyName, getOverrideExpr(invocation, value)); : getOverrideExpr関数を介した 後の値は、変数propertyName とセットでHashMap変数fakie に代入される。 fakie: currentEmployee.empId : ‘HelloWorld’ : currentEmployee.empId ‘HelloWorld’ ③エラー処理で、変換エラーの原因となった文字列が保持される ConversionErrorInterceptor.java
15.
Copyright©2013 JPCERT/CC All
rights reserved.15 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : fakie.put(propertyName, getOverrideExpr(invocation, value)); : invocation.getStack().setExprOverrides(fakie); public void setExprOverrides(Map overrides) { if (this.overrides == null) { this.overrides = overrides; } OgnlValueStack.java エラー値を含む変数fakieはOgnlValueStackクラス のインスタンス変数overridesとして保持される。 : currentEmployee.empId : ‘HelloWorld’ fakie fakie: currentEmployee.empId : ‘HelloWorld’ : ③エラー処理で、変換エラーの原因となった文字列が保持される ConversionErrorInterceptor.java
16.
Copyright©2013 JPCERT/CC All
rights reserved. ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライ アントへ送信する。 Jspに記述されたコード(OGNL式)にしたがって、変数empIdの値が 取得される。 OGNLとは ⇒Object-Graph Navigation Language (OGNL) OGNLはJavaのクラス(Model)の変数を設定/取得するための言語 サンプルコードのjspに記載されたOGNL式は、変数 currentEmployee.empIdの値を取得して表示をする式 下記のような表記で直接Javaメソッドを呼び出すことも可能 : : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : Jspファイル(View) /empmanager/editEmployee.jsp <property name="roots">@java.io.File@listRoots()</property> 16
17.
Copyright©2013 JPCERT/CC All
rights reserved. ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライ アントへ送信する。 Jspに記述されたOGNL式にしたがって、OgnlValueStack.findValueメソッドを 経由して変数currentEmployee.empId の値(エラーとなった文字列)が取得される。 : : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : Jspファイル(View) /empmanager/editEmployee.jsp public Object findValue(String expr, Class asType) { : if ((overrides != null) && overrides.containsKey(expr)) { expr = (String) overrides.get(expr); : Object value = OgnlUtil.getValue(expr, context, root, asType); : } OgnlValueStack.java TextFieldTag.doEndTag() TextField.end() TextField.evaluateParams() TextField.findValue() TextParseUtil.translateVariables() TextParseUtil.translateVariables() TextParseUtil.translateVariables() OgnlValueStack.findValue() 経由する関数 currentEmployee.empId 17
18.
Copyright©2013 JPCERT/CC All
rights reserved. ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライ アントへ送信する。 : : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : public Object findValue(String expr, Class asType) { : if ((overrides != null) && overrides.containsKey(expr)) { expr = (String) overrides.get(expr); : Object value = OgnlUtil.getValue(expr, context, root, asType); : } 前述の変数overridesから、変数expr とセットの値(エラーが発生する原因 となった文字列)がとりだされる。 ‘HelloWorld’ fakie ‘HelloWorld’ currentEmployee.empId : currentEmployee.empId : ‘HelloWorld’ 18 OgnlValueStack.java TextFieldTag.doEndTag() TextField.end() TextField.evaluateParams() TextField.findValue() TextParseUtil.translateVariables() TextParseUtil.translateVariables() TextParseUtil.translateVariables() OgnlValueStack.findValue() 経由する関数 Jspに記述されたOGNL式にしたがって、OgnlValueStack.findValueメソッドを 経由して変数currentEmployee.empId の値(エラーとなった文字列)が取得される。 Jspファイル(View) /empmanager/editEmployee.jsp
19.
Copyright©2013 JPCERT/CC All
rights reserved. ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライ アントへ送信する。 : : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : public Object findValue(String expr, Class asType) { : if ((overrides != null) && overrides.containsKey(expr)) { expr = (String) overrides.get(expr); : Object value = OgnlUtil.getValue(expr, context, root, asType); : } 変数exprの値はOgnlUtil::getValueメ ソッドにてOGNL式として評価された 後にクライアントに返却される。 ‘HelloWorld’ fakie OGNL : currentEmployee.empId : ‘HelloWorld’ 文字列’HelloWorld’はOGNL式として意 味を持たないため、’HelloWorld’のまま 19 TextFieldTag.doEndTag() TextField.end() TextField.evaluateParams() TextField.findValue() TextParseUtil.translateVariables() TextParseUtil.translateVariables() TextParseUtil.translateVariables() OgnlValueStack.findValue() 経由する関数 OgnlValueStack.java Jspファイル(View) /empmanager/editEmployee.jsp Jspに記述されたOGNL式にしたがって、OgnlValueStack.findValueメソッドを 経由して変数currentEmployee.empId の値(エラーとなった文字列)が取得される。
20.
Copyright©2013 JPCERT/CC All
rights reserved. Javaファイル (Model) Jspファイル (View) Jspに記述されたOGNL式では、OgnlValueStack.findValueメソッドによって Java(Model)の処理結果を取得後、必ずOgnlUtil.getValueメソッドによって OGNL式による評価が行われる。 処理 OgnlUtil.getValueメソッ ドによるOGNL式の評価 Model(Java)による処理が・・・ • 正常処理の場合 → 正常値 • エラー処理の場合 → エラー値 が保持される クライアント 処理結果 処理後の値 OgnlValueStack.findValue() リクエスト Hello World Java(Model)側の処理後の値を取得後、 Java(Model)側の処理がエラーかどうかに関わ らず、必ずOGNL式として評価される。 ① ② ③ 20 ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライ アントへ送信する。
21.
Copyright©2013 JPCERT/CC All
rights reserved. ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライ アントへ送信する 21 レスポンスがクライアントに返される。 クライアント上ではエラーメッセージが表示される。
22.
Copyright©2013 JPCERT/CC All
rights reserved. 攻撃コード 22 ■攻撃コードのポイント パラメーターempIdに対し、JavaメソッドであるgetRuntime.execでコマンドを 実行するOGNL式を指定している。 GET /?empId='%2B@java.lang.Runtime@getRuntime().exec(“notepad.exe")%2B' HTTP/1.1 Host: localhost:8080 <form action=‘/’ method=‘GET’> : <input type=‘hidden’ name=‘empId’ value="'+@java.lang.Runtime@getRuntime().exec("notepad.exe")+'"> : </form> 攻撃コードのHTTPリクエスト 攻撃コードのHTTPリクエストを送信するためのHTML
23.
Copyright©2013 JPCERT/CC All
rights reserved. 変換エラーが発生した際の処理フロー ※Struts2に付属しているサンプルアプリ「showcase」を元に処理を解説する ① クライアントから、エラーの原因となる文字列を含むリクエストが送信 される。 ② Struts上で、文字列→数値に変換する際にエラーが発生し、エラー(例 外)処理を行う。 ③ エラー処理で、変換エラーの原因となった文字列が保持される。 ④ Jsp側からエラーの原因となった文字列が取り出され、レスポンスの一部 としてクライアントへ送信される。 攻撃コードが実行された際の処理 23 攻撃コードが実行された際でも処理のフローは正常処理と全く変わらないが、 ④の処理内容で違いが発生する。
24.
Copyright©2013 JPCERT/CC All
rights reserved. 攻撃コード実行時 ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライアントへ送信する Jspの内容にしたがって、変数empIdの値が取得され、エラーの原因となった 文字列が返されるが・・・ : : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : public Object findValue(String expr, Class asType) { : if ((overrides != null) && overrides.containsKey(expr)) { expr = (String) overrides.get(expr); : Object value = OgnlUtil.getValue(expr, context, root, asType); : } OgnlValueStack.java 前述の変数overridesから、エラー が発生した原因となる文字列が変 数exprにとりだされる。 : fakie '+@java.lang.Runtime@getRuntime().exec(“notepad.exe")+' 24 Jspファイル(View) /empmanager/editEmployee.jsp
25.
Copyright©2013 JPCERT/CC All
rights reserved. 25 public Object findValue(String expr, Class asType) { : if ((overrides != null) && overrides.containsKey(expr)) { expr = (String) overrides.get(expr); : Object value = OgnlUtil.getValue(expr, context, root, asType); : } 変数exprがOGNL式として評 価される際にJavaメソッ ドが実行されてしまう!! '+@java.lang.Runtime@getRuntime().exec(“notepad.exe")+' 25 OgnlValueStack.java : : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : 攻撃コード実行時 ④Jsp側からエラーの文字列が取り出され、レスポンスとしてクライアントへ送信する Jspの内容にしたがって、変数empIdの値が取得され、エラーの原因となった 文字列が返されるが・・・ Jspファイル(View) /empmanager/editEmployee.jsp
26.
Copyright©2013 JPCERT/CC All
rights reserved. 問題点 今回のアプリケーションにおける具体的な問題点 引数をOGNL式として評価するOgnlUtil::getValueメソッドに 対し、無害化していないデータを渡してしまっていた。 26 以下のコーディングガイドに違反している!! 「 IDS00-J. 信頼境界を越えて渡される信頼できないデータは無 害化する」 問題点に対してどうすべきだったか。 OgnlUtil::getValueメソッドの引数として渡す前に、データが OGNL式として解釈されないように無害化する必要があった。
27.
Copyright©2013 JPCERT/CC All
rights reserved. 変換エラーが発生した際の処理フロー ※Struts2付属のサンプルアプリ「showcase」を元に処理を解説する ① クライアントから、エラーの原因となる文字列を含むリクエストが送信 される。 ② Struts上で、文字列→数値に変換する際にエラーが発生し、エラー(例 外)処理を行う。 ③ エラー処理で、変換エラーの原因となった文字列が保持される。 ④ Jsp側からエラーの原因となった文字列が取り出され、レスポンスの一部 としてクライアントへ送信される。 修正版コード: バージョン2.2.3.1で修正 27 この処理のコードに修正が入っている HelloWorld Long型 empId エラー値 HelloWorld .jsp エラー値 HelloWorld HelloWorld エラー empIdは数値です HelloWorld empId= HelloWorld ① ② ③ ④
28.
Copyright©2013 JPCERT/CC All
rights reserved. 修正版コード: 脆弱バージョンのおさらい 28 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : HashMap<Object, Object> fakie = null; : Object value = entry.getValue(); : fakie.put(propertyName, getOverrideExpr(invocation, value)); : ConversionErrorInterceptor.java 変数valueには変換エ ラーとなった入力値が代 入される。 “HelloWorld” ③エラー処理で、変換エラーの原因となった文字列が保持される
29.
Copyright©2013 JPCERT/CC All
rights reserved.29 public class ConversionErrorInterceptor extends AbstractInterceptor { : public String intercept(ActionInvocation invocation) throws Exception { : HashMap<Object, Object> fakie = null; : Object value = entry.getValue(); : fakie.put(propertyName, getOverrideExpr(invocation, value)); : protected Object getOverrideExpr(ActionInvocation invocation, Object value) { return "'" + value + "'"; } 変数valueは getOverrideExpr関数を 介してHashMap変数 fakieに代入される。 getOverrideExprメソッド getOverrideExprメソッドでは第2引数を’(シン グルクオート)で囲って返却する処理を行う “HelloWorld”fakie: ‘HelloWorld’ : 修正版コードではgetOverrideExprメソッドに修正が加えられている。 ConversionErrorInterceptor.java 修正版コード: 脆弱バージョンのおさらい ③エラー処理で、変換エラーの原因となった文字列が保持される
30.
Copyright©2013 JPCERT/CC All
rights reserved. 修正版コード: getOverrideExprメソッドの修正内容 30 protected Object getOverrideExpr(ActionInvocation invocation, Object value) { return "'" + value + "'"; } getOverrideExprメソッド(修正前) protected Object getOverrideExpr(ActionInvocation invocation, Object value) { return "¥"" + StringEscapeUtils.escapeJava(String.valueOf(value)) + "¥""; } getOverrideExprメソッド(修正後) StringEscapeUtils.escapeJavaメソッドを 使ってエスケープ処理を行っている。 getOverrideExprメソッドでは第2引数を’(シン グルクオート)で囲って返却する処理を行う ③エラー処理で、変換エラーの原因となった文字列が保持される
31.
Copyright©2013 JPCERT/CC All
rights reserved. 修正版コード: StringEscapeUtils.escapeJavaメソッドによるエスケープ 31 • StringEscapeUtils.escapeJavaメソッドによるエスケープ処理 エスケープ対象文字列 エスケープ処理後の文字列 ¥b ¥¥b ¥n ¥¥n ¥t ¥¥t ¥f ¥¥f ¥r ¥¥r ‘(シングルクオート) ¥’ “(ダブルクオート) ¥” ¥ ¥¥ / ¥/ ■攻撃コードで送信される値がエスケープされると・・・・ '%2B@java.lang.Runtime@getRuntime().exec(“notepad.exe")%2B' ↓ ¥'%2B@java.lang.Runtime@getRuntime().exec(¥“notepad.exe¥")%2B¥' ⇒OGNL式として解釈されない文字列にエスケープされる。
32.
Copyright©2013 JPCERT/CC All
rights reserved. 修正版コード: エスケープ実施後のOgnlUtil::getValueメソッドの動作 32 : : <s:textfield label="Employee Id" name="currentEmployee.empId"/> : public Object findValue(String expr, Class asType) { : if ((overrides != null) && overrides.containsKey(expr)) { expr = (String) overrides.get(expr); : Object value = OgnlUtil.getValue(expr, context, root, asType); : } OgnlValueStack.java 変数exprはエスケープされて いるため、OGNL式として評 価されてもJavaメソッドは 実行されない ¥'+@java.lang.Runtime@getRuntime().exec(¥“notepad.exe¥")+¥' StringEscapeUtils::escapeJavaメソッドでエスケープされた値を OgnlUtil::getValueメソッドの引数として渡すことで、OGNL式として評 価されてもJavaメソッドは実行されなくなる。 32 Jspファイル(View) /empmanager/editEmployee.jsp
33.
Copyright©2013 JPCERT/CC All
rights reserved. 補足 今回は数値型への変換エラーの際の処理であったが、そ れ以外のエラー処理にも同様の脆弱性が存在する可能性 がある。 Struts2の脆弱性でありながら、その上で動くJAVAアプ リケーションの仕様によって影響を受けるかどうかが変 わる 33
34.
Copyright©2013 JPCERT/CC All
rights reserved. まとめ 34 ■この脆弱性から学べるプログラミングの注意点 • SQLクエリやHTMLなど、異なる処理系にデータを出力 する際には、出力先の処理を考慮した無害化が必要 • 無害化を実施しないとSQLインジェクションやクロスサ イトスクリプティング等の脆弱性が発生する • 今回はOGNL式にデータを渡す際に、OGNL式として解 釈されないような無害化処理を実施していなかったため、 脆弱性が発生した ■上記への対策 •データを出力する際には、出力先でデータがどのように 解釈されるかを確認する •出力先でデータが意図しない解釈をされないように適切 な無害化を行う
35.
Copyright©2013 JPCERT/CC All
rights reserved. 著作権・引用や二次利用について 本資料の著作権はJPCERT/CCに帰属します。 本資料あるいはその一部を引用・転載・再配布する際は、引用元名、資料名および URL の明示をお 願いします。 記載例 引用元:一般社団法人JPCERTコーディネーションセンター Java アプリケーション脆弱性事例解説資料 Apache Strus2 における任意の Java メソッド実行の脆弱性 https://www.jpcert.or.jp/research/materials-java-casestudies/No.2_Apache_Struts2.pdf 本資料を引用・転載・再配布をする際は、引用先文書、時期、内容等の情報を、JPCERT コーディ ネーションセンター広報(office@jpcert.or.jp)までメールにてお知らせください。なお、この連絡に より取得した個人情報は、別途定めるJPCERT コーディネーションセンターの「プライバシーポリ シー」に則って取り扱います。 本資料の利用方法等に関するお問い合わせ JPCERTコーディネーションセンター 広報担当 E-mail:office@jpcert.or.jp 35 本資料の技術的な内容に関するお問い合わせ JPCERTコーディネーションセンター セキュアコーディング担当 E-mail:secure-coding@jpcert.or.jp