2024-02-10 21:30:13 +00:00
# 웹 취약점 방법론
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
{% hint style="success" %}
AWS 해킹 배우기 및 연습하기:< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > [**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > \
GCP 해킹 배우기 및 연습하기: < img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > [**HackTricks Training GCP Red Team Expert (GRTE)**< img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > ](https://training.hacktricks.xyz/courses/grte)
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
< details >
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
< summary > HackTricks 지원하기< / summary >
2024-01-01 17:15:42 +00:00
2024-07-19 10:16:40 +00:00
* [**구독 계획** ](https://github.com/sponsors/carlospolop ) 확인하기!
* **💬 [**Discord 그룹** ](https://discord.gg/hRep4RUj7f ) 또는 [**텔레그램 그룹** ](https://t.me/peass )에 참여하거나 **Twitter** 🐦 [**@hacktricks\_live** ](https://twitter.com/hacktricks\_live )**를 팔로우하세요.**
* **[**HackTricks**](https://github.com/carlospolop/hacktricks) 및 [**HackTricks Cloud** ](https://github.com/carlospolop/hacktricks-cloud ) GitHub 리포지토리에 PR을 제출하여 해킹 팁을 공유하세요.**
2022-09-12 18:43:22 +00:00
< / details >
2024-07-19 10:16:40 +00:00
{% endhint %}
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
모든 웹 펜테스트에서 **취약할 수 있는 여러 숨겨진 장소와 명백한 장소가 있습니다** . 이 게시물은 가능한 모든 장소에서 취약점을 검색했는지 확인하기 위한 체크리스트입니다.
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
## 프록시
2022-09-12 18:43:22 +00:00
{% hint style="info" %}
2024-07-19 10:16:40 +00:00
요즘 **웹** **애플리케이션**은 일반적으로 어떤 종류의 **중개** **프록시**를 사용하며, 이는 취약점을 악용하는 데 (악용)될 수 있습니다. 이러한 취약점은 취약한 프록시가 필요하지만, 일반적으로 백엔드에서 추가적인 취약점도 필요합니다.
2022-09-12 18:43:22 +00:00
{% endhint %}
2024-07-19 10:16:40 +00:00
* [ ] [**Hop-by-hop 헤더 악용** ](../abusing-hop-by-hop-headers.md )
* [ ] [**캐시 오염/캐시 기만** ](../cache-deception.md )
2024-02-10 21:30:13 +00:00
* [ ] [**HTTP 요청 스머글링** ](../http-request-smuggling/ )
* [ ] [**H2C 스머글링** ](../h2c-smuggling.md )
* [ ] [**서버 측 포함/엣지 측 포함** ](../server-side-inclusion-edge-side-inclusion-injection.md )
2024-07-19 10:16:40 +00:00
* [ ] [**Cloudflare 드러내기** ](../../network-services-pentesting/pentesting-web/uncovering-cloudflare.md )
* [ ] [**XSLT 서버 측 주입** ](../xslt-server-side-injection-extensible-stylesheet-language-transformations.md )
2024-02-10 21:30:13 +00:00
* [ ] [**프록시 / WAF 보호 우회** ](../proxy-waf-protections-bypass.md )
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
## **사용자 입력**
2022-09-12 18:43:22 +00:00
{% hint style="info" %}
2024-07-19 10:16:40 +00:00
대부분의 웹 애플리케이션은 **사용자가 나중에 처리될 데이터를 입력할 수 있도록 허용합니다.** \
서버가 기대하는 데이터 구조에 따라 일부 취약점이 적용될 수도 있고 그렇지 않을 수도 있습니다.
2022-09-12 18:43:22 +00:00
{% endhint %}
2024-02-10 21:30:13 +00:00
### **반사된 값**
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
입력된 데이터가 응답에 반영될 수 있다면, 페이지는 여러 문제에 취약할 수 있습니다.
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
* [ ] [**클라이언트 측 템플릿 주입** ](../client-side-template-injection-csti.md )
* [ ] [**명령 주입** ](../command-injection.md )
2022-09-12 18:43:22 +00:00
* [ ] [**CRLF** ](../crlf-0d-0a.md )
2024-07-19 10:16:40 +00:00
* [ ] [**덩글링 마크업** ](../dangling-markup-html-scriptless-injection/ )
* [ ] [**파일 포함/경로 탐색** ](../file-inclusion/ )
* [ ] [**열린 리다이렉트** ](../open-redirect.md )
* [ ] [**프로토타입 오염을 통한 XSS** ](../deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss )
2024-02-10 21:30:13 +00:00
* [ ] [**서버 측 포함/엣지 측 포함** ](../server-side-inclusion-edge-side-inclusion-injection.md )
* [ ] [**서버 측 요청 위조** ](../ssrf-server-side-request-forgery/ )
2024-07-19 10:16:40 +00:00
* [ ] [**서버 측 템플릿 주입** ](../ssti-server-side-template-injection/ )
* [ ] [**리버스 탭 납치** ](../reverse-tab-nabbing.md )
* [ ] [**XSLT 서버 측 주입** ](../xslt-server-side-injection-extensible-stylesheet-language-transformations.md )
2022-09-12 18:43:22 +00:00
* [ ] [**XSS** ](../xss-cross-site-scripting/ )
* [ ] [**XSSI** ](../xssi-cross-site-script-inclusion.md )
* [ ] [**XS-Search** ](../xs-search.md )
2024-07-19 10:16:40 +00:00
언급된 취약점 중 일부는 특별한 조건이 필요하고, 다른 일부는 단순히 내용이 반영되기만 하면 됩니다. 다음에서 취약점을 빠르게 테스트할 수 있는 흥미로운 폴리글롯을 찾을 수 있습니다:
2022-09-12 18:43:22 +00:00
{% content-ref url="../pocs-and-polygloths-cheatsheet/" %}
[pocs-and-polygloths-cheatsheet ](../pocs-and-polygloths-cheatsheet/ )
{% endcontent-ref %}
2024-02-10 21:30:13 +00:00
### **검색 기능**
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
기능이 백엔드 내에서 어떤 종류의 데이터를 검색하는 데 사용될 수 있다면, 이를 (악용)하여 임의의 데이터를 검색할 수 있습니다.
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
* [ ] [**파일 포함/경로 탐색** ](../file-inclusion/ )
* [ ] [**NoSQL 주입** ](../nosql-injection.md )
* [ ] [**LDAP 주입** ](../ldap-injection.md )
2022-09-12 18:43:22 +00:00
* [ ] [**ReDoS** ](../regular-expression-denial-of-service-redos.md )
2024-07-19 10:16:40 +00:00
* [ ] [**SQL 주입** ](../sql-injection/ )
* [ ] [**XPATH 주입** ](../xpath-injection.md )
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
### **양식, 웹소켓 및 PostMsgs**
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
웹소켓이 메시지를 게시하거나 사용자가 작업을 수행할 수 있도록 하는 양식이 있을 때 취약점이 발생할 수 있습니다.
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
* [ ] [**교차 사이트 요청 위조** ](../csrf-cross-site-request-forgery.md )
* [ ] [**교차 사이트 웹소켓 탈취 (CSWSH)** ](../websocket-attacks.md )
2024-02-10 21:30:13 +00:00
* [ ] [**PostMessage 취약점** ](../postmessage-vulnerabilities/ )
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
### **HTTP 헤더**
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
웹 서버에서 제공하는 HTTP 헤더에 따라 일부 취약점이 존재할 수 있습니다.
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
* [ ] [**클릭재킹** ](../clickjacking.md )
* [ ] [**콘텐츠 보안 정책 우회** ](../content-security-policy-csp-bypass/ )
2024-07-19 10:16:40 +00:00
* [ ] [**쿠키 해킹** ](../hacking-with-cookies/ )
2024-02-10 21:30:13 +00:00
* [ ] [**CORS - 잘못된 구성 및 우회** ](../cors-bypass.md )
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
### **우회**
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
일부 특정 기능에서는 우회하는 데 유용할 수 있는 여러 가지 해결 방법이 있습니다.
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
* [ ] [**2FA/OTP 우회** ](../2fa-bypass.md )
* [ ] [**결제 프로세스 우회** ](../bypass-payment-process.md )
* [ ] [**캡차 우회** ](../captcha-bypass.md )
* [ ] [**로그인 우회** ](../login-bypass/ )
2024-07-19 10:16:40 +00:00
* [ ] [**경쟁 조건** ](../race-condition.md )
* [ ] [**요금 제한 우회** ](../rate-limit-bypass.md )
* [ ] [**비밀번호 재설정 우회** ](../reset-password.md )
2024-02-10 21:30:13 +00:00
* [ ] [**등록 취약점** ](../registration-vulnerabilities.md )
2024-07-19 10:16:40 +00:00
2024-02-10 21:30:13 +00:00
### **구조화된 객체 / 특정 기능**
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
일부 기능은 **데이터가 매우 특정한 형식으로 구조화되어야** 합니다 (예: 언어 직렬화 객체 또는 XML). 따라서 애플리케이션이 해당 유형의 데이터를 처리해야 하므로 취약점을 식별하기가 더 쉽습니다.\
일부 **특정 기능**은 **특정 형식의 입력이 사용될 경우** 취약할 수 있습니다 (예: 이메일 헤더 주입).
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
* [ ] [**역직렬화** ](../deserialization/ )
2024-07-19 10:16:40 +00:00
* [ ] [**이메일 헤더 주입** ](../email-injections.md )
2024-02-10 21:30:13 +00:00
* [ ] [**JWT 취약점** ](../hacking-jwt-json-web-tokens.md )
* [ ] [**XML 외부 엔티티** ](../xxe-xee-xml-external-entity.md )
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
### 파일
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
파일 업로드를 허용하는 기능은 여러 문제에 취약할 수 있습니다.\
2024-07-19 10:16:40 +00:00
사용자 입력을 포함한 파일을 생성하는 기능은 예기치 않은 코드를 실행할 수 있습니다.\
사용자가 업로드한 파일이나 사용자 입력을 포함한 자동 생성된 파일을 열면 사용자가 손상될 수 있습니다.
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
* [ ] [**파일 업로드** ](../file-upload/ )
2024-07-19 10:16:40 +00:00
* [ ] [**수식 주입** ](../formula-csv-doc-latex-ghostscript-injection.md )
* [ ] [**PDF 주입** ](../xss-cross-site-scripting/pdf-injection.md )
2024-02-10 21:30:13 +00:00
* [ ] [**서버 측 XSS** ](../xss-cross-site-scripting/server-side-xss-dynamic-pdf.md )
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
### **외부 신원 관리**
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
* [ ] [**OAUTH를 통한 계정 탈취** ](../oauth-to-account-takeover.md )
* [ ] [**SAML 공격** ](../saml-attacks/ )
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
### **기타 유용한 취약점**
2022-09-12 18:43:22 +00:00
2024-02-10 21:30:13 +00:00
이러한 취약점은 다른 취약점을 악용하는 데 도움이 될 수 있습니다.
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
* [ ] [**도메인/서브도메인 탈취** ](../domain-subdomain-takeover.md )
2022-09-12 18:43:22 +00:00
* [ ] [**IDOR** ](../idor.md )
2024-02-10 21:30:13 +00:00
* [ ] [**매개변수 오염** ](../parameter-pollution.md )
* [ ] [**유니코드 정규화 취약점** ](../unicode-injection/ )
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
{% hint style="success" %}
AWS 해킹 배우기 및 연습하기:< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > [**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > \
GCP 해킹 배우기 및 연습하기: < img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > [**HackTricks Training GCP Red Team Expert (GRTE)**< img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > ](https://training.hacktricks.xyz/courses/grte)
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
< details >
2022-09-12 18:43:22 +00:00
2024-07-19 10:16:40 +00:00
< summary > HackTricks 지원하기< / summary >
2024-01-01 17:15:42 +00:00
2024-07-19 10:16:40 +00:00
* [**구독 계획** ](https://github.com/sponsors/carlospolop ) 확인하기!
* **💬 [**Discord 그룹** ](https://discord.gg/hRep4RUj7f ) 또는 [**텔레그램 그룹** ](https://t.me/peass )에 참여하거나 **Twitter** 🐦 [**@hacktricks\_live** ](https://twitter.com/hacktricks\_live )**를 팔로우하세요.**
* **[**HackTricks**](https://github.com/carlospolop/hacktricks) 및 [**HackTricks Cloud** ](https://github.com/carlospolop/hacktricks-cloud ) GitHub 리포지토리에 PR을 제출하여 해킹 팁을 공유하세요.**
2022-09-12 18:43:22 +00:00
< / details >
2024-07-19 10:16:40 +00:00
{% endhint %}