일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- really simple security plugin
- 모의해킹
- cve-2024-2242
- plugin
- pentesting
- DLL Injection
- XSS
- MALWARE
- Command Injection
- cve-2024-4439
- 1-day analysis
- nmap
- 리버스 쉘
- cve-2024-27954
- Burp Suite
- 악성코드
- cve-2024-27956
- cve-2024-10924
- 악성코드 분석
- SQL Injection
- rce
- wp-automatic plugin
- cve-2024-5084
- broken access control
- LPE
- authentication bypass
- wordpress
- Stored XSS
- kioptrix
- wp-automatic
- Today
- Total
목록보안공부/시스템 해킹 (5)
Psalm

DLL 인젝션의 두번째 방법은 레지스트리를 이용하는 것이다. 주입된 악성 dll은 해당 프로그램이 실행될 때마다 악성 dll도 같이 실행된다는 장점을 가지고 있다. 윈도우 운영체제는 기본적으로 AppInit_DLLs와 LoadAppInit_DLLs 레지스트리 항목이 있다. 이 두가지 레지스트리를 이용하면 시스템이 재부팅되어도 자동으로 악성 DLL이 실행된다. 이 기법은 User32.dll이 프로세스에 로딩될 때 AppInit_DLLs 레지스트리 항목에 있는 값을 읽어서 LoadLibrary()API로 해당 DLL을 로딩한다. 즉, User32.dll을 로딩하는 프로세스에만 사용할 수 있다. 실습 환경:공격자 PC: Kali Linux피해자 PC: Windows 10 22H2시나리오:공격자가 침투한 후 악..

DLL 인젝션 방법원격 스레드 생성레지스트리 이용메시지 후킹리버싱 핵심 원리를 참고해 작성하였습니다.원격 스레드 생성 프로세스를 대상으로 공격자의 동적 라이브러리를 주입하는 공격 기법 시나리오:DLL 인젝션으로 피해자 PC에 리버스 쉘 악성코드를 주입한다.공격자 PC에서 피해자 PC로 연결한다.리버스 쉘을 선택한 이유는 Bind shell보다 리버스 쉘이 방화벽에 탐지되는게 더 어렵기 때문이다.보통 공격자가 외부에서 내부 시스템으로 침투하는게 어려울 수 있기 때문에 reverse shell을 선택했다. Inject.dll#include #include BOOL InjectDll(DWORD dwPID, LPCTSTR szDllPath){ HANDLE hProcess = NULL, hThread = N..

ESP Trick “PUSHAD” 명령어는 모든 레지스터를 스택에 PUSH한다. 이 부분 때문에 ESP Trick이 가능하다. PUSHAD의 목적은 언패킹 루틴 실행 이후 실행되는 명령어에서 현재 레지스터에 저장된 값을 사용하기 위해 현재 레지스터 값들을 저장하는 것이다. 언패킹 루틴이 종료되면 모든 섹션이 언팩 상태가 되고, “POPAD”를 통해 원래 레지스터 값들을 복구시킨다. PUSH관련 명령을 통해서 스택을 변화시키고 다음에 OEP를 찾기위해 ESP에 HW BP를 걸었는데, 그 이유는 ESP 레지스터에 HW BP를 설치하는것으로 현재 스택에 저장된 원래 레지스터 값들이 언제 회수(POPAD)되는지 알아 차릴 수 있기 때문이다. 만약 SW BP를 설치하면 INT3 인터럽트가 해당 주소에 설치되고..

해당 실습은 익스 코드를 짜는게 아닌 윈도우 커널의 어떤 부분을 이용해야지 시스템 권한으로 권한상승 되는지 알 수 있는 실습이다. 처음에 윈도우 커널 익스를 할 때 어떤 부분을 건드려야하는지 감이 안왔다. 하지만 해당 실습을 통해 대략 어떻게 시스템 권한을 얻게 되고, 또 어떤 부분을 건드리면 해당 권한에 대한 모든 기능을 사용할 수 있는지 또한 알게되었다. 실습 환경:OS: Windows 10 22H2실습의 목적은 토큰을 악용해 권한상승을 파악하는 것이다. 두가지 기법에 대해 실습할 것이다.Token stealing/replacement - 낮은 권한의 토큰을 높은 권한의 토큰으로 변경Token privilege adjustment - 기존 토큰에 더 많은 권한 추가 및 사용 가능 _EPROCESS프로..

reference: https://blog.ch4n3.kr/291 드림핵 check_return_value라는 문제이다. 문제를 보면 문자열의 주소를 반환하지만 출력하지 않는다고 되어있다. 그럼 해당 문자열의 포인터를 gdb로 읽으면 될것같다.하지만 gdb로 까보니 symbol table이 없어 main주소도 없고, start주소를 입력해보아도 프로그램의 시작지점으로 가질 않고 바로 종료된다. 찾아보니 info file 명령어를 입력하면 각 섹션이 나오고, 코드가 있는 섹션은 .text섹션이니 해당 주소에 bp를 걸고 실행하면 된다고 한다. 해당 주소에 bp를 걸고, 실행시켰더니start함수로 분기됐다.그리고 IDA로 코드를 클릭하면 해당 명령에 대한 offset이 나오는데, 이거보고, gdb에서 해당..