Web開発者と情報セキュリティの入門者が必ず知っておくべきWebハッキング&セキュアコーディング
crehacktive
情報セキュリティ入門者とWeb開発者のためのWebハッキング入門講義!今回の講義をはじめ、Webハッキングを楽しく始めましょう!
初級
Penetration Testing, Injection
ウェブハッキングのラスボス!ファイルアップロード脆弱性攻撃手法!パート1に続き、パート2 '1編' の教育として、より深化した高級技法に関する内容を扱います。
受講生 127名
難易度 中級以上
受講期間 無制限


Javaファイルアップロードライブラリに関する理解
Javaファイルアップロードライブラリに関する潜在的なセキュリティ脅威
ウェブファイアウォール(WAF)に関する理解
ウェブパッチウォール(WAF)回避技術
多様な環境に対する理解
様々な環境におけるウェブシェルアップロード攻撃の手法

今日、ウェブハッキングを学べるさまざまなルートがあります。Inflearnのようなオンライン講義プラットフォーム、オフライン講義を受講できる学院、そして検索エンジンなど、私たちがよく目にするルートでは、そのほとんどが一般的な内容を中心に扱われがちです。しかし、本講義は違います。'どこでも聞くことができない内容'であると自負しています!
以下のソースコードは、ファイルアップロードの脆弱性に対して安全であると言われているソースコードです。では、本当に安全なコードなのでしょうか?
...
String path = request.getRealPath("/upload");
MultipartRequest multi = new MultipartRequest(request, path, 1024*10*10, "UTF-8");
Enumeration formNames = multi.getFileNames();
while(formNames.hasMoreElements()) {
String param = (String)formNames.nextElement();
String uploadFile = multi.getFilesystemName(param);
int extOffset = uploadFile.lastIndexOf(".");
String fileExt = uploadFile.substring(extOffset+1).toLowerCase();
if (!fileExt.equals("jpg") && !fileExt.equals("png") && !fileExt.equals("gif")) {
File fp = new File(path, uploadFile);
fp.delete();
out.println(“<script>alert(‘不正な拡張子’);history.back(-1);</script>");
return;
}
}
...いいえ。該当のソースコードは「脆弱なソースコード」です。
このコードが脆弱な理由、およびこれに対する攻撃方法については、Part 2-1の講義で詳しく扱います。
ファイルアップロードライブラリ別のケース理解
各ファイルアップロードライブラリについて分析し、発生し得る潜在的なセキュリティ脅威、および多様なケースについて扱います。
セキュリティ脅威に伴う方法論および実習
様々なケースについて潜在的なセキュリティ脅威を確認し、攻撃の実習を行います。
Webパブリックファイアウォール(WAF)回避手法のケーススタディ
様々なウェブブラウザの回避手法について学び、該当する攻撃手法の実習を行います。
JEUSとWebSphereで発生したディレクトリトラバーサル(パッシング)脆弱性を詳しく扱い、その脆弱性が今日なぜ脅威となるのか、そしてどのように攻撃できるのかという攻撃手法について詳しく見ていきます。(IBM WebSphere CVE-2020-4163)
その他、多様な環境やケースについて詳しく見ていきます。
「ファイルアップロード脆弱性 Part 2」は、多様な環境におけるファイルアップロード脆弱性攻撃を成功させるための3つの講義で構成されています。しかし、正解を教える講義ではありません。本講義を受講したからといって、すべての環境でファイルアップロード脆弱性攻撃に成功するわけではありません。
本講義の目標は、正解を教えることではなく、観点を広げることにあります。多様な環境で脆弱性が発生し得ることを学習すれば、「あ、こんな方法も試せるんだ!」という気づきを得ることができ、さらには今後の診断においても、多様な環境が存在することを「知った上で」分析できるようになります。これを知って分析するのと、知らずに分析するのとでは、雲泥の差があります。
今回の講義を通じて、ウェブハッキングに対する視点をしっかりと正し、より高いレベルへと皆さんの実力を引き上げるための礎を築けることを願っています!
Q. 受講前に必要な知識はありますか?
必ず'ファイルアップロード脆弱性'についての理解が必要です。追加で Part 1で扱う内容を理解していれば、スムーズにPart 2を受講できると思います。もちろん、'ファイルアップロード脆弱性'への理解度が高い方であれば、受講に問題はないでしょう。
Q. 受講対象者はどのようになりますか?
できるだけ「実務者」の方々が受講されることをお勧めします。あるいは、ウェブハッキングに関する理論を十分に学習された方、就職準備中の方々も受講いただけます。
Q. 'ファイルアップロード脆弱性攻撃 Part 1'を必ず受講しなければなりませんか?
受講されることをお勧めします。ファイルアップロード脆弱性についての理解があっても、パート1の内容を把握していないと、パート2の中で理解できない部分が出てくるかと思います。そのため、実務者の方であっても、まずはパート1を受講してからパート2を受講されることをお勧めします。
Q. パート2が3編に分かれていますが、すべて受講すべきでしょうか?
必ずしも3編すべてを受講する必要はありません。しかし、多様な実務環境に対する攻撃手法を知りたい場合は、3編すべてを受講することを「強く」おすすめします。
Q. Part 2は3編の順番通りに受講する必要がありますか?
必ずしもそうする必要はなく、ご希望のものから先に受講していただいても構いません。ただ、3つの講義を順番通りに制作したため、やはり順次受講されるのが流れとして良いかと思われます。
本講義は、ウェブ技術とウェブハッキングに関する理解がある状態で受講されることをお勧めします。そして、CreHactiveのウェブハッキング講義シリーズのうち、'ファイルダウンロード脆弱性攻撃'、'ファイルアップロード脆弱性攻撃 Part 1'の講義を先に受講されることを推奨します。
学習対象は
誰でしょう?
現場で模擬ハッキングや脆弱性診断を行っている実務者
就職準備生
前提知識、
必要でしょうか?
ウェブ技術
ウェブハッキングの基礎
ファイルダウンロード脆弱性の知識
ファイルアップロード脆弱性の知識
27,690
受講生
1,562
受講レビュー
509
回答
4.9
講座評価
18
講座
こんにちは、クリーハクティブ(crehacktive)です。
長年にわたり様々なウェブサービスを診断・研究してきた経験を活かし、実務ですぐに活用できる知識をInflearn(インフラン)プラットフォームで共有しています。
そして、ウェブハッキングの基礎を体系的に扱った『クリハクティブの一冊で終わらせるウェブハッキングバイブル』を執筆しました。基礎が不足している方には、この本で学習を始めることをお勧めします。
メール : crehacktive3@naver.com
全体
72件 ∙ (6時間 10分)
講座資料(こうぎしりょう):
7. 概要
02:57
9. [ライブラリ1]環境構築
03:04
12. [ライブラリ1]ライブラリ分析
16:09
23. [ライブラリ1]まとめ
03:53
24. [ライブラリ2]環境構築
03:20
34. Webファイアウォールの理解
06:58
全体
11件
4.9
11件の受講レビュー
受講レビュー 20
∙
平均評価 4.8
受講レビュー 4
∙
平均評価 5.0
受講レビュー 5
∙
平均評価 5.0
受講レビュー 4
∙
平均評価 5.0
受講レビュー 8
∙
平均評価 4.4
知識共有者の他の講座を見てみましょう!
同じ分野の他の講座を見てみましょう!