
CVE-2021-44790 실험
r:parsebody() 함수가 multipart/form-data HTTP 요청을 부적절하게 처리할 때 발생하며, 일반적으로 비표준 form 데이터 전송으로 인해 유발됩니다.
공격 목표: BufferOverflow 취약점을 이용해 대상에 DOS 공격 수행
1단계: 피해자 측:
**Apache24/bin** để tiến hành chạy **httpd.exe.**
2단계: 공격자 측:


초기 연결 재설정 오류:
로그의 첫 부분은 ConnectionResetError104
가 특정 오류 번호와 함께 발생했음을 보여줍니다.
, 이는 "피어에 의한 연결 재설정"을 의미합니다. 이는 일반적으로 원격 서버("피어")가 연결 요청을 받은 후 갑자기 연결을 닫을 때 발생합니다.
Urllib3 라이브러리 및 요청:
스크립트는 requestsurllib3
라이브러리를 사용하는 것으로 보이며, 따라서 이를 기반으로 합니다.
HTTP 연결을 생성하기 위해.
urllib3
라이브러리는 연결을 열고 요청을 시도하지만 연결 재설정으로 인해 실패합니다.
라이브러리 내 예외 처리:
urllib3 및 requests 모두
예외를 포착하고 다시 발생시킵니다.
라이브러리는 요청에 대해 재시도 횟수를 늘리려고 시도하며, 이는 실패 시 재시도하도록 설정되어 있을 수 있음을 나타내지만 결국 재시도 횟수를 소진하고 포기합니다.
요청의 최종 연결 오류:
최종 예외는 requests 라이브러리에서 발생하며, ConnectionError 입니다.
. 이는 서버에 연결할 수 없을 때 발생하는 일반적인 예외로, 서버가 연결을 재설정한 경우 발생할 수 있습니다.


3단계: 피해자 측:
[Wed Nov 29 15:11:58.320403 2023] [mpm_winnt:notice] [pid 6224:tid 732] AH00428: Parent: child process 7220 exited with status 3221225477 -- Restarting.3221225477 로 종료되었습니다. 이는 잘못된 메모리 접근 또는 유사한 오류일 수 있습니다. Apache는 이후 프로세스를 다시 시작하려고 시도합니다.
httpd.exe (Apache HTTP 서버 실행 파일)임을 나타냅니다. 오류가 발생한 모듈 이름은 MSVCR110.dll (버전 11.0.51106.1)입니다. 예외 코드는 0xc0000005 로, 일반적으로 접근 위반 오류를 나타냅니다. 이는 프로그램이 읽거나 쓰면 안 되는 메모리 위치에 접근하려고 시도했음을 의미하며, 이는 애플리케이션 충돌의 일반적인 원인입니다.
httpd.conf 설정:
경로 수정

Lua 모듈 실행

Lua 모듈에 핸들러 추가

test.lua 내용 및 경로:
