인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
보안 · 네트워크

/

보안

파일 업로드 취약점 고급 공격 기법 PART2 [통합편]

웹 해킹의 끝판 대장! 파일 업로드 취약점 공격 기법! 파트1에 이어 파트2 '1편' 교육으로 보다 심화된 고급 기법에 대한 내용을 다룹니다.

(5.0) 수강평 1개

수강생 71명

Thumbnail

중급자를 위해 준비한
[보안] 강의입니다.

이런 걸
배워요!

  • Java 파일 업로드 라이브러리에 대한 이해

  • Java 파일 업로드 라이브러리에 대한 잠재적 보안 위협

  • 웹 방화벽에 대한 이해

  • 웹 방화벽 우회 기술

  • 다양한 환경에 대한 이해

  • 다양한 환경에서 웹쉘 업로드 공격 방법

💡 수강 전 확인해주세요!

  • 이 강의는 파일 업로드 취약점 고급 공격 기법 PART2 [통합편] 강의입니다. (Part 2-1 + Part 2-2 + Part 2-3) 파트를 분할 수강하고 싶으신 분들은 [PART2-1] / [PART2-2] / [PART2-3] 강의 소개를 참고해주세요! 

어디에서도 들을 수 없는 내용을
강의에 담았습니다!

오늘날 웹 해킹을 배울 수 있는 다양한 경로들이 있습니다. 인프런과 같은 온라인 강의 플랫폼, 오프라인 강의를 들을 수 있는 학원 그리고 검색 엔진 등, 우리가 흔히 보는 경로에서는 대부분 일반적인 내용 위주로 다루기 마련입니다. 그러나 본 강의는 다릅니다. '어디에서도 들을 수 없는 내용'이라 자부합니다!

파일 업로드 취약점 공격 Part 2-1 
학습 내용을 확인해보세요!

안전하다고 알려진 업로드 검증 로직, 과연 안전할까? 

아래 소스코드는 파일 업로드 취약점으로부터 안전하다고 알려진 소스코드입니다. 그렇다면 정말 안전한 코드가 맞을까요?

... 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 강의에서 자세히 다룹니다.

더 알아볼까요? 📚

파일 업로드 라이브러리별 케이스 이해

각 파일 업로드 라이브러리에 대해 분석하며, 발생될 수 있는 잠재적 보안 위협 그리고 다양한 케이스에 대해 다룹니다.

보안 위협에 따른 방법론 및 실습

다양한 케이스에 대해 잠재적 보안 위협을 살펴보고 공격 실습을 진행합니다.

파일 업로드 취약점 공격 Part 2-2 
학습 내용을 확인해보세요!

웹 방화벽 우회 기법 케이스 스터디

다양한 웹 방화벽 우회 기법들에 대해 알아보고, 해당 공격 기법에 대한 실습을 진행합니다. 

파일 업로드 취약점 공격 Part 2-3 
학습 내용을 확인해보세요!

JEUS와 WebSphere에서 발생된 디렉터리 파싱 취약점을 자세히 다루며 해당 취약점이 오늘날 왜 위협적이며, 어떻게 공격을 할 수 있는지에 대한 공격 방법론을 자세히 살펴봅니다. (IBM WebSphere CVE-2020-4163)

그 외 다양한 환경들, 케이스들에 대해 자세히 살펴봅니다. 

정답을 알려주는 강의가 아닙니다,
관점을 넓혀주는 강의입니다!

‘파일 업로드 취약점 Part 2’는 다양한 환경에 대한 파일 업로드 취약점 공격을 성공하기 위한 3편의 강의로 구성되어 있습니다. 그러나 정답을 알려주는 강의가 아닙니다. 본 강의를 수강한다고 해서 모든 환경에서 파일 업로드 취약점 공격에 성공하는 것이 아닙니다. 

본 강의의 목표는 정답을 알려주는 것이 아닌, 관점을 넓혀주는 강의입니다. 다양한 환경에서 취약점이 발생할 수 있다는 걸 학습하게 되면 ‘아, 이렇게도 시도해 볼 수 있구나!’라는 깨우침을 얻게 되며, 나아가 앞으로 있을 진단들에서도 다양한 환경이 존재한다는 걸 ’알고’ 분석할 수 있습니다. 이를 알고 분석하는 것과 모르고 분석하는 것은 하늘과 땅 차이입니다. 

이번 강의를 통해 웹 해킹에 대한 관점을 확실하게 바로잡고, 더 높은 수준으로 여러분의 실력을 끌어올릴 수 있는 초석을 다질 수 있기를 바랍니다!

예상 질문 Q&A 💬

Q. 강의 수강 전 알고 있어야 할 지식이 있나요?

반드시 '파일 업로드 취약점'에 대한 이해가 있으셔야 합니다. 추가적으로 Part 1에서 다루는 내용을 알고 있어야 원활하게 Part 2를 수강하실 수 있을 것 같습니다. 물론 '파일 업로드 취약점'에 대한 이해도가 높으신 분들이라면 수강에 문제가 되지 않을 것 같습니다.

Q. 수강 대상자는 어떻게 되나요?

되도록 '실무자' 분들이 수강하시는 것을 추천드립니다. 혹은 웹 해킹에 대한 이론을 충분히 학습하신 분들, 취업 준비생 분들도 수강하실 수 있습니다.

Q. '파일 업로드 취약점 공격 Part 1'를 반드시 수강해야 하나요?

수강하실 것을 추천드립니다. 파일 업로드 취약점에 대한 이해가 있더라도 파트1에 대한 이해가 없으면, 파트2 내용 중 이해가 되지 않는 부분이 있을 겁니다. 따라서 실무자 분이시더라도 파트1을 먼저 수강하신 후 파트2를 수강하시는 것을 추천드립니다.

Q. Part 2가 3편으로 나뉘던데, 모두 수강해야 할까요?

반드시 3편 모두 수강하실 필요 없습니다. 그러나 다양한 실무 환경에 대한 공격 방법론을 알고 싶을 경우 3편 모두 수강하시는 것을 '적극' 추천드립니다.

Q. Part 2는 3편 순서대로 수강해야 될까요?

꼭 그럴 필요 없이 원하는 것 위주로 먼저 수강하셔도 되긴 합니다. 다만, 3편의 강의를 순서대로 제작하였기 때문에 아무래도 순차적으로 수강하시는 것이 흐름상 좋을 것이라 판단이 됩니다.

수강 전 참고 사항 📢

본 강의는 웹 기술과 웹 해킹에 대한 이해가 있는 상태에서 수강하시는 것을 추천드립니다. 그리고 크리핵티브의 웹 해킹 강의 시리즈 중 '파일 다운로드 취약점 공격', '파일 업로드 취약점 공격 Part 1' 강의를 먼저 수강하시기를 권장합니다.

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • 현업에서 모의해킹 혹은 취약점 진단을 하고 있는 실무자

  • 취업 준비생

선수 지식,
필요할까요?

  • 웹 기술

  • 웹 해킹 기초

  • 파일 다운로드 취약점 지식

  • 파일 업로드 취약점 지식

안녕하세요
크리핵티브입니다.

수강생 수

23,507

수강평 수

1,160

강의 평점

4.9

강의 수

18

:: 국내 정보보안 솔루션 개발 기업 재직 ::
- 앱 위변조 방지 솔루션 : 미들웨어 담당 / 해킹 대회 운영진 / 국내 유명 해킹/방어 훈련장 제작

:: 국내 정보보안 전문 업체 재직 ::
- 블랙박스 모의해킹 / 시나리오 기반 모의해킹 / 웹 취약점 진단 / 모바일 취약점 진단 / 소스코드 취약점 진단 / APT 모의 훈련 / DDoS 모의훈련 / 인프라 진단 / 스마트 가전 진단
- 국내 대기업, 중소기업 다수 진단

:: 외부 교육 및 활동 ::
- 멀티캠퍼스, 국가 보안 기술 연구소(ETRI)
- 국내 정보보안 업체 : 재직자 대상 "웹 모의해킹 심화 교육" 진행중
- 해커팩토리 문제 제작

:: 취약점 발견 ::

1) Web Application Server 취약점
- TMAX JEUS : 원격 명령어 실행 취약점(Remote Command Execution Vulnerability)
- IBM WebSphere(CVE-2020-4163) : 원격 명령어 실행 취약점(Remote Command Execution Vulnerability)

2) CMS(Contents Management System) 취약점
- 네이버 스마트에디터 : 파일 업로드 취약점
- 그누보드 : SQL Injection , 파일 업로드 취약점(그누보드4, 그누보드5), XSS ...
- 킴스큐 : 파리미터 변조 취약점 , 파일 업로드 취약점

* 이메일 : crehacktive3@naver.com
* 블로그 : http://www.crehacktive.co.kr

커리큘럼

전체

72개 ∙ (6시간 10분)

수업 자료

가 제공되는 강의입니다.

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!