inflearn logo

Kỹ thuật tấn công nâng cao lỗ hổng tải tệp lên PART2-1: Phân tích thư viện tải tệp lên và phương pháp tấn công

Trùm cuối của hack web! Kỹ thuật tấn công lỗ hổng File Upload! Tiếp nối phần 1, nội dung đào tạo phần 2 'tập 1' này sẽ đề cập đến các kỹ thuật nâng cao chuyên sâu hơn.

(5.0) 5 đánh giá

238 học viên

Độ khó Trung cấp trở lên

Thời gian Không giới hạn

Penetration Testing
Penetration Testing
Penetration Testing
Penetration Testing

Đánh giá từ những học viên đầu tiên

Đánh giá từ những học viên đầu tiên

5.0

5.0

Bryan

100% đã tham gia

Sẽ tốt hơn nếu một tệp ví dụ được đưa vào phiên bản dễ bị tấn công để tài liệu khóa học có thể được thực hành ngay lập tức bằng cách xây dựng một môi trường thực. Tệp ví dụ có thể được tải xuống làm tài liệu khóa học là phiên bản đã được loại bỏ lỗ hổng.

5.0

학습자

10% đã tham gia

Tôi đang học những lớp tốt. Cảm ơn

5.0

구운고구마

100% đã tham gia

Tôi đã tham gia tất cả các khóa học này trong kỳ nghỉ lễ Chuseok. Tôi rất thích phần giải thích chi tiết và cách thực hành về thư viện tải tệp lên và quan điểm của tôi về Spring Framework đã thay đổi. Tôi đang thực hành hack mô phỏng và điều đó thật tốt vì có rất nhiều bài tập mà tôi có thể áp dụng ngay. Cảm ơn bạn đã tạo ra một khóa học tuyệt vời.

Bạn sẽ nhận được điều này sau khi học.

  • Tìm hiểu về thư viện tải tệp lên (file upload) trong Java

  • Mối đe dọa bảo mật tiềm ẩn đối với thư viện tải tệp lên trong Java

Lỗ hổng tải lên tệp tin, đến cả những kỹ thuật nâng cao!
Chúng tôi sẽ truyền tải những nội dung cốt lõi mà bạn khó có thể tìm thấy ở bất cứ đâu.

Bài giảng về lỗ hổng tấn công tải lên tệp (File Upload)
Cuối cùng, phần cuối của loạt bài!

📖 Chuỗi bài giảng về tấn công lỗ hổng File Upload, được chia sẻ bởi chuyên gia thực tế về Pentest

시리즈에서 배우는 내용 펼쳐보기

PHẦN(1): Cơ bản / Tấn công thực tế / Lập trình an toàn

Đây là khóa đào tạo đi sâu vào quy trình tấn công với phương pháp tiếp cận hoàn toàn khác biệt so với các phương pháp đã biết trước đây - nội dung quan trọng nhất trong tấn công lỗ hổng File Upload. Bạn có thể học từ những kiến thức cơ bản về tấn công đến các kỹ thuật vượt rào được sử dụng trong thực tế, phân tích các trường hợp thực tế, cũng như các phương án ứng phó đa dạng và lập trình an toàn (secure coding). Đây là khóa học bắt buộc, làm nền tảng cho các chương trình đào tạo tiếp theo.

PHẦN(2) : Kỹ thuật tấn công nâng cao / Phân tích chuyên sâu thực tế Bài giảng hiện tại

Đây là khóa đào tạo về các kỹ thuật tấn công nâng cao và kỹ thuật vượt qua tường lửa ứng dụng web (Web Application Firewall) chưa được đề cập trong PHẦN(1), đồng thời phân tích các kỹ thuật chuyên môn được sử dụng trong môi trường thực tế thông qua thực hành.

SKILL-UP: Kỹ thuật làm rối mã nguồn Webshell

Trong môi trường web ngày nay, số lượng nơi sử dụng các giải pháp phát hiện webshell đang dần tăng lên, do đó, các chuyên gia đánh giá bảo mật cần phải sở hữu kỹ năng vượt qua các giải pháp phát hiện này. Vì vậy, đây sẽ là một khóa đào tạo thiết yếu dành cho những người đang làm việc trong ngành.

Kỹ thuật tấn công lỗ hổng File Upload và phân tích trường hợp thực tế: PHẦN 2

Phần cuối cùng để kết thúc khóa học về lỗ hổng File Upload!
Khóa học này là phần tiếp theo của khóa học ‘Kỹ thuật tấn công lỗ hổng File Upload và phân tích tình huống thực tế từ chuyên gia Pentest: PHẦN 1’, mang tên ‘Phần 2’.

Tấn công lỗ hổng File Upload Phần 2 được chia thành tổng cộng 3 phần, với các chủ đề như sau.

Phần 2-1 Bài giảng hiện tại

Phân tích thư viện tải lên tệp tin và phương pháp tấn công

Phần 2-2

Kiến thức cơ bản và kỹ thuật để vượt qua Web Application Firewall (WAF)

Phần 2-3

Các phương pháp tấn công trong nhiều môi trường thực tế khác nhau

Bài giảng này là 'Phần 1' của Part 2, đề cập đến chủ đề ‘Phân tích thư viện tải lên tệp và phương pháp tấn công’.

✅ Sự khác biệt giữa Tấn công lỗ hổng File Upload Phần 1 - Phần 2

  • Phần 1 đề cập đến khái niệm và nguyên lý hoạt động, phương pháp tấn công, ví dụ thực tế và lập trình an toàn đối với lỗ hổng tải tệp lên. (Khái niệm cơ bản và lý thuyết chung)
  • Part 2 sẽ xem xét về các phương pháp tấn công đa dạng có thể xảy ra trong các môi trường cụ thể, vượt ra ngoài các cơ chế tấn công thông thường của lỗ hổng tải lên tệp tin (file upload).

Nội dung không thể nghe thấy ở bất cứ đâu khác
đã được đưa vào bài giảng!

Tính đến tháng 9 năm 2023, đã có hơn 18,000+ học viên tích lũy
đang theo học chuỗi bài giảng hack web của CreHactive.

Ngày nay, có rất nhiều con đường khác nhau để học về web hacking. Từ các nền tảng bài giảng trực tuyến như Inflearn, các học viện cung cấp khóa học trực tiếp cho đến các công cụ tìm kiếm, hầu hết những kênh phổ biến mà chúng ta thường thấy đều có xu hướng chỉ tập trung vào những nội dung mang tính chất phổ thông.

Tuy nhiên, khóa học này thì khác. Tôi tự tin rằng đây là 'nội dung mà bạn không thể nghe thấy ở bất cứ đâu khác'!


Tấn công lỗ hổng File Upload Phần 2-1 
Hãy kiểm tra nội dung học tập!

💡 Bài giảng này là phần 1 của Part 2, nội dung đề cập đến 'Phân tích thư viện tải lên tệp và phương pháp tấn công'.

Logic kiểm tra tải lên được cho là an toàn, liệu có thực sự an toàn?

Mã nguồn dưới đây được biết đến là mã nguồn an toàn trước các lỗ hổng tải lên tệp tin (file upload). Vậy thì, liệu đây có thực sự là mã nguồn an toàn không?

...
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(‘Phần mở rộng không hợp lệ’);history.back(-1);</script>");
        return;
    }
}
...

Không phải vậy. Đoạn mã nguồn này là 'mã nguồn có lỗ hổng'.
Lý do tại sao mã này có lỗ hổng và phương pháp tấn công tương ứng sẽ được trình bày chi tiết trong bài giảng Part 2-1.

Tìm hiểu thêm nhé? 📚

Hiểu các trường hợp theo từng thư viện tải lên tệp

Phân tích từng thư viện tải lên tệp (file upload), đồng thời đề cập đến các mối đe dọa bảo mật tiềm ẩn có thể xảy ra và các trường hợp đa dạng khác nhau.

Phương pháp luận và thực hành theo các mối đe dọa bảo mật

Chúng tôi sẽ xem xét các mối đe dọa bảo mật tiềm ẩn đối với nhiều trường hợp khác nhau và tiến hành thực hành tấn công.


Đây không phải là bài giảng cho bạn biết đáp án,
mà là bài giảng giúp bạn mở rộng góc nhìn!

'Lỗ hổng File Upload Phần 2' bao gồm 3 bài giảng nhằm thực hiện thành công các cuộc tấn công khai thác lỗ hổng tải tệp lên trong nhiều môi trường khác nhau. Tuy nhiên, đây không phải là bài giảng đưa ra đáp án có sẵn. Việc tham gia khóa học này không đồng nghĩa với việc bạn sẽ thành công trong mọi cuộc tấn công lỗ hổng tải tệp lên ở mọi môi trường.

Mục tiêu của bài giảng này không phải là đưa ra câu trả lời chính xác, mà là một bài giảng giúp mở rộng góc nhìn. Khi bạn học được rằng các lỗ hổng có thể xảy ra trong nhiều môi trường khác nhau, bạn sẽ nhận ra rằng "À, mình cũng có thể thử theo cách này!", và hơn thế nữa, bạn có thể phân tích các lần đánh giá trong tương lai khi đã 'biết' rằng có nhiều môi trường đa dạng tồn tại. Việc phân tích khi đã biết điều này và khi không biết là một sự khác biệt trời vực.

Tôi hy vọng thông qua bài giảng lần này, các bạn có thể định hình lại quan điểm về web hacking một cách rõ ràng và đặt nền móng vững chắc để nâng cao kỹ năng của mình lên một tầm cao mới!


Câu hỏi thường gặp Q&A 💬

Q. Có kiến thức nào cần biết trước khi tham gia khóa học không?

Bạn nhất định phải có sự hiểu biết về 'lỗ hổng File Upload'. Ngoài ra, bạn cần phải nắm rõ các nội dung đã được đề cập trong Part 1 thì mới có thể theo học Part 2 một cách suôn sẻ. Tất nhiên, nếu bạn là người có mức độ hiểu biết cao về 'lỗ hổng File Upload' thì việc theo học sẽ không thành vấn đề.

Q. Đối tượng học viên là những ai?

Tôi thực sự khuyên các bạn là 'người đang đi làm thực tế' nên tham gia khóa học này. Hoặc những người đã học đủ lý thuyết về hack web, các bạn đang chuẩn bị xin việc cũng có thể tham gia khóa học.

Q. Có nhất thiết phải học 'Tấn công lỗ hổng File Upload Phần 1' không?

Tôi khuyên bạn nên tham gia khóa học này. Ngay cả khi bạn đã có hiểu biết về lỗ hổng tải tệp lên (File Upload Vulnerability), nếu không nắm vững nội dung ở Phần 1, có thể sẽ có những phần trong Phần 2 mà bạn không hiểu được. Do đó, ngay cả khi bạn là người đã đi làm, tôi vẫn khuyên bạn nên học xong Phần 1 trước khi bắt đầu Phần 2.

Q. Phần 2 được chia thành 3 tập, tôi có cần phải học hết tất cả không?

Bạn không nhất thiết phải học hết cả 3 phần. Tuy nhiên, nếu bạn muốn biết về các phương pháp tấn công trong nhiều môi trường thực tế khác nhau, tôi &#39;nhiệt liệt&#39; khuyên bạn nên học cả 3 phần.

Q. Có nhất thiết phải học Phần 2 theo đúng thứ tự 3 tập không ạ?

Không nhất thiết phải như vậy, bạn hoàn toàn có thể chọn học những nội dung mình muốn trước. Tuy nhiên, vì bộ 3 bài giảng này được xây dựng theo trình tự, nên việc học lần lượt theo thứ tự sẽ giúp bạn nắm bắt mạch kiến thức tốt hơn.


Lưu ý trước khi học 📢

Khóa học này được khuyến nghị dành cho những người đã có hiểu biết về công nghệ web và tấn công web. Ngoài ra, tôi khuyên bạn nên học các khóa học 'Tấn công lỗ hổng tải xuống tệp' (File Download Vulnerability Attack) và 'Tấn công lỗ hổng tải lên tệp Phần 1' (File Upload Vulnerability Attack Part 1) trong loạt bài giảng về tấn công web của CreHactive trước.

Các bài giảng bắt buộc phải xem

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Người thực hành đang làm việc trong lĩnh vực kiểm thử xâm nhập hoặc đánh giá lỗ hổng bảo mật trong thực tế.

  • Người đang tìm việc làm

Cần biết trước khi bắt đầu?

  • Công nghệ web

  • Cơ bản về hack web

  • Kiến thức về lỗ hổng tải xuống tệp tin (File Download Vulnerability)

  • Kiến thức về lỗ hổng tải tập tin lên (File Upload Vulnerability)

Xin chào
Đây là crehacktive

27,154

Học viên

1,503

Đánh giá

509

Trả lời

4.9

Xếp hạng

18

Các khóa học

Xin chào, tôi là CreHactive.

Dựa trên kinh nghiệm nhiều năm nghiên cứu và đánh giá các dịch vụ web đa dạng, tôi đã và đang chia sẻ những kiến thức có thể áp dụng ngay vào thực tế trên nền tảng Inflearn.

Và tôi cũng đã biên soạn cuốn 『Kinh thánh về Web Hacking trong một cuốn sách của Crehacktive』 nơi hệ thống hóa các kiến thức cơ bản về Web Hacking. Tôi khuyên những ai còn thiếu kiến thức nền tảng nên bắt đầu học với cuốn sách này.

 

Thêm

Chương trình giảng dạy

Tất cả

31 bài giảng ∙ (2giờ 24phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

5 đánh giá

5.0

5 đánh giá

  • rjswn1291님의 프로필 이미지
    rjswn1291

    Đánh giá 13

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Tôi đã tham gia tất cả các khóa học này trong kỳ nghỉ lễ Chuseok. Tôi rất thích phần giải thích chi tiết và cách thực hành về thư viện tải tệp lên và quan điểm của tôi về Spring Framework đã thay đổi. Tôi đang thực hành hack mô phỏng và điều đó thật tốt vì có rất nhiều bài tập mà tôi có thể áp dụng ngay. Cảm ơn bạn đã tạo ra một khóa học tuyệt vời.

    • ygchoi7133707님의 프로필 이미지
      ygchoi7133707

      Đánh giá 10

      Đánh giá trung bình 5.0

      5

      10% đã tham gia

      Tôi đang học những lớp tốt. Cảm ơn

      • wgs041392662님의 프로필 이미지
        wgs041392662

        Đánh giá 5

        Đánh giá trung bình 5.0

        5

        32% đã tham gia

        • lohasworld님의 프로필 이미지
          lohasworld

          Đánh giá 4

          Đánh giá trung bình 5.0

          5

          100% đã tham gia

          • bryan님의 프로필 이미지
            bryan

            Đánh giá 8

            Đánh giá trung bình 4.9

            5

            100% đã tham gia

            Sẽ tốt hơn nếu một tệp ví dụ được đưa vào phiên bản dễ bị tấn công để tài liệu khóa học có thể được thực hành ngay lập tức bằng cách xây dựng một môi trường thực. Tệp ví dụ có thể được tải xuống làm tài liệu khóa học là phiên bản đã được loại bỏ lỗ hổng.

            Khóa học khác của crehacktive

            Hãy khám phá các khóa học khác của giảng viên!

            Khóa học tương tự

            Khám phá các khóa học khác trong cùng lĩnh vực!

            923.524 ₫