Sploitus

Path-traversal-RCE-Apache-2.4.49-2.4.50-Exploit

kitploit Β· 2026-08-27

Exploit Code

MARKDOWN73 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-CALFCRUSHER-PATH-TRAVERSAL-RCE-APACHE-2.4.49-2.4.50-EXPLOIT
### CVE-2021-41773 및 CVE-2021-42013 μ•…μš© 도ꡬ

**Apache/2.4.49-2.4.50μ—μ„œμ˜ 경둜 탐색 곡격 및 RCE**

### κΈ°λŠ₯

-> URL λͺ©λ‘ μž…λ ₯ κ°€λŠ₯

-> CGI 및 λΉ„-CGI λͺ¨λ‘ 지원

-> Apache/2.4.49 - 2.4.50 지원

### μ‚¬μš©λ²•

`$ git clone https://github.com/CalfCrusher/Path-traversal-RCE-Apache-2.4.49-2.4.50-Exploit`

`$ cd Path-traversal-RCE-Apache-2.4.49-2.4.50-Exploit && pip3 install -r requirements.txt`

`$ python3 main.py urls.txt`

### κ°„λž΅ν•œ 역사

2021λ…„ 10μ›” 5일, Apache HTTP Server v2.4.49의 경둜 탐색 곡격에 λŒ€ν•œ CVEκ°€ κ³΅κ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. CVE-2021-41773둜 μ§€μ •λœ 이 취약점은 λ‹€μŒκ³Ό 같은 μ„€λͺ…κ³Ό ν•¨κ»˜ κ³΅κ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€:

root@kitploit:~
    
    
    Apache HTTP Server 2.4.49의 경둜 μ •κ·œν™” λ³€κ²½μ—μ„œ 결함이 λ°œκ²¬λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
    κ³΅κ²©μžλŠ” 경둜 탐색 곡격을 μ‚¬μš©ν•˜μ—¬ λ¬Έμ„œ 루트 μ™ΈλΆ€μ˜ νŒŒμΌμ— URL을 λ§€ν•‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ¬Έμ„œ 루트 μ™ΈλΆ€μ˜ 파일이 "require all denied"둜 λ³΄ν˜Έλ˜μ§€ μ•ŠλŠ” 경우 μ΄λŸ¬ν•œ μš”μ²­μ€ 성곡할 수 μžˆμŠ΅λ‹ˆλ‹€.
    λ˜ν•œ 이 결함은 CGI μŠ€ν¬λ¦½νŠΈμ™€ 같은 ν•΄μ„λœ 파일의 μ†ŒμŠ€λ₯Ό μœ μΆœν•  수 μžˆμŠ΅λ‹ˆλ‹€.
    이 λ¬Έμ œλŠ” μ‹€μ œ ν™˜κ²½μ—μ„œ μ•…μš©λ˜κ³  μžˆλŠ” κ²ƒμœΌλ‘œ μ•Œλ €μ Έ μžˆμŠ΅λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” Apache 2.4.49μ—λ§Œ 영ν–₯을 미치며 이전 λ²„μ „μ—λŠ” 영ν–₯을 λ―ΈμΉ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
    

이λ₯Ό λΆ„μ„ν•˜μ—¬ μ‹€μ œλ‘œ μš°λ¦¬μ—κ²Œ 무엇을 μ˜λ―Έν•˜λŠ”μ§€ μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€:

root@kitploit:~
    
    
    첫 번째 λΆ€λΆ„μ—μ„œ 결함을 λ…ΈμΆœμ‹œν‚¨ 졜근 λ³€κ²½ 사항을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. 경둜 μ •κ·œν™”λž€ μ£Όμ–΄μ§„ 경둜λ₯Ό μ†Œν”„νŠΈμ›¨μ–΄κ°€ 이해할 수 μžˆλŠ” ν‘œμ€€ ν˜•μ‹μœΌλ‘œ λ³€ν™˜ν•˜μ—¬ μ‹€μ œ 파일 μ‹œμŠ€ν…œμ— λ§€ν•‘ν•˜λŠ” 것을 μ˜λ―Έν•©λ‹ˆλ‹€. μ΄λŠ” μ˜λ„ν•˜μ§€ μ•Šμ€ νŒŒμΌμ„ 읽을 수 μžˆλŠ” 경둜 탐색 곡격을 μ˜μ‹¬ν•˜κ²Œ λ§Œλ“­λ‹ˆλ‹€.
    λ‹€μŒ 뢀뢄은 우리의 μ˜μ‹¬μ„ ν™•μΈμ‹œμΌœ μ£Όλ©°, μ˜λ„λœ λ²”μœ„ λ°–μ˜ λ¦¬μ†ŒμŠ€λ₯Ό 읽기 μœ„ν•΄ 경둜 탐색 곡격을 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
    맀우 νŠΉμ •ν•œ ꡬ성이 μ„€μ •λ˜μ–΄ μžˆμ–΄μ•Ό 함을 μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€. λ¬Έμ„œ 루트 μ™ΈλΆ€μ˜ νŒŒμΌμ—λŠ” λͺ…μ‹œμ μœΌλ‘œ κΆŒν•œμ΄ λΆ€μ—¬λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€. μ΄λŠ” κΈ°λ³Έ ꡬ성이 μ•„λ‹ˆλ―€λ‘œ λŒ€λΆ€λΆ„μ˜ Apache ν˜ΈμŠ€νŠΈμ—μ„œλŠ” 이 μ•…μš© 도ꡬ가 λ¬΄μš©μ§€λ¬Όμ΄ λ©λ‹ˆλ‹€(λ‹€ν–‰νžˆλ„).
    λ‹€μŒ 뢀뢄은 CGI μŠ€ν¬λ¦½νŠΈμ— λŒ€ν•΄ μ„€λͺ…ν•˜λ©°, 이둜 인해 이 곡격이 μž‘λ™ν•˜λ €λ©΄ CGIκ°€ ν™œμ„±ν™”λ˜μ–΄ μžˆμ–΄μ•Ό ν•˜κ±°λ‚˜ κ²½λ‘œκ°€ μ–΄λ–€ λ°©μ‹μœΌλ‘œλ“  CGI와 κ΄€λ ¨λ˜μ–΄ μžˆλ‹€κ³  잘λͺ» μƒκ°ν•˜κ²Œ λ©λ‹ˆλ‹€.
    ꡬ성이 이 λ²„κ·Έμ˜ 직접적인 영ν–₯을 λ°›μ§€ μ•Šλ”λΌλ„ μ·¨μ•½ν•œ 버전을 κ°€λŠ₯ν•œ ν•œ 빨리 μ—…λ°μ΄νŠΈν•΄μ•Ό ν•©λ‹ˆλ‹€.
    

μš”μ•½ν•˜μžλ©΄, 이 취약점을 μ•…μš©ν•˜λ €λ©΄ λŒ€μƒ μ„œλ²„μ— 맀우 νŠΉμ΄ν•œ ꡬ성이 ν•„μš”ν•˜λ©°, νŠΉμ • 경둜λ₯Ό 톡해 곡격해야 ν•©λ‹ˆλ‹€. λ§Žμ€ μˆ˜μ • 이후...

ApacheλŠ” 이 버그λ₯Ό μˆ˜μ •ν•˜κ³  v2.4.50을 μΆœμ‹œν–ˆμŠ΅λ‹ˆλ‹€. λλ‚œ μ΄μ•ΌκΈ°μΌκΉŒμš”? κΈ€μŽ„μš”, κ·Έλ ‡μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 뢈과 2일 후인 10μ›” 7일, 이전 취약점을 μΈμš©ν•œ μƒˆλ‘œμš΄ CVEκ°€ κ³΅κ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 CVEλŠ” 이전 경둜 탐색 곡격에 λŒ€ν•œ μˆ˜μ •μ΄ λΆˆμ™„μ „ν•˜λ©°, ν•΄λ‹Ή κ²½λ‘œκ°€ alias μ§€μ‹œλ¬Έμ„ μ‚¬μš©ν•˜μ—¬ URL을 파일 μ‹œμŠ€ν…œμ— λ§€ν•‘ν•˜λŠ” 경우 μ—¬μ „νžˆ 탐색이 κ°€λŠ₯ν•˜λ‹€κ³  μ–ΈκΈ‰ν•©λ‹ˆλ‹€. 이 CVEλŠ” CVE-2021-42013으둜 μ§€μ •λ˜μ—ˆμœΌλ©° μ„€λͺ…은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€:

root@kitploit:~
    
    
    Apache HTTP Server 2.4.50μ—μ„œ CVE-2021-41773에 λŒ€ν•œ μˆ˜μ •μ΄ λΆˆμΆ©λΆ„ν•œ κ²ƒμœΌλ‘œ ν™•μΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
    κ³΅κ²©μžλŠ” 경둜 탐색 곡격을 μ‚¬μš©ν•˜μ—¬ Alias μœ μ‚¬ μ§€μ‹œλ¬ΈμœΌλ‘œ κ΅¬μ„±λœ 디렉터리 μ™ΈλΆ€μ˜ νŒŒμΌμ— URL을 λ§€ν•‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
    μ΄λŸ¬ν•œ 디렉터리 μ™ΈλΆ€μ˜ 파일이 일반적인 κΈ°λ³Έ ꡬ성인 "require all denied"둜 λ³΄ν˜Έλ˜μ§€ μ•ŠλŠ” 경우 μ΄λŸ¬ν•œ μš”μ²­μ€ 성곡할 수 μžˆμŠ΅λ‹ˆλ‹€.
    μ΄λŸ¬ν•œ 별칭 κ²½λ‘œμ— CGI μŠ€ν¬λ¦½νŠΈλ„ ν™œμ„±ν™”λœ 경우 원격 μ½”λ“œ 싀행이 κ°€λŠ₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” Apache 2.4.49 및 Apache 2.4.50μ—λ§Œ 영ν–₯을 미치며 이전 λ²„μ „μ—λŠ” 영ν–₯을 λ―ΈμΉ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
    

이전과 λ§ˆμ°¬κ°€μ§€λ‘œ μ—¬κΈ°μ„œ λͺ‡ κ°€μ§€λ₯Ό 배울 수 μžˆμŠ΅λ‹ˆλ‹€:

root@kitploit:~
    
    
    첫 번째 μ•…μš© 도ꡬ가 μˆ˜μ •λœ κ²ƒμœΌλ‘œ μ•Œλ €μ‘Œμ§€λ§Œ, 탐색을 μž‘λ™μ‹œν‚€λŠ” 또 λ‹€λ₯Έ μž…λ ₯이 μžˆμŠ΅λ‹ˆλ‹€(λ‚˜μ€‘μ— κΈ°μ–΅ν•˜μ„Έμš”).
    이제 별칭 경둜 μ§€μ‹œλ¬ΈμœΌλ‘œ μ œν•œλ©λ‹ˆλ‹€.
    일반적인 경둜 μ™ΈλΆ€μ˜ λ””λ ‰ν„°λ¦¬μ—λŠ” μ—¬μ „νžˆ λͺ…μ‹œμ  κΆŒν•œμ΄ λΆ€μ—¬λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€.
    CGIκ°€ ν™œμ„±ν™”λœ 경우 λ‹¨μˆœν•œ 정보 유좜 외에도 RCEλ₯Ό 얻을 수 μžˆμŠ΅λ‹ˆλ‹€.
    

## 

_μ–΄λ– ν•œ 손해 및 λΆˆλ²• μ‚¬μš©μ— λŒ€ν•΄μ„œλ„ μ±…μž„μ„ μ§€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 멍청이가 λ˜μ§€ λ§ˆμ„Έμš”!_