Wargame/pwnable.kr

Mom? how can I pass my input to a computer program?ssh input2@pwnable.kr -p2222 (pw:guest)Stage 1: argv/* input.c */// argv if(argc != 100) return 0; if(strcmp(argv['A'],"\x00")) return 0; if(strcmp(argv['B'],"\x20\x0a\x0d")) return 0; printf("Stage 1 clear!\n");# ex.pyfrom pwn import *# stage 1argv = ["" for i in range(100)]argv[0] = "/home/input2/input"argv[0x41] = "\x00"argv[0x42]..
I made a skeleton interface for one time password authentication system.I guess there are no mistakes.could you take a look at it?hint : not a race condition. do not bruteforce.ssh otp@pwnable.kr -p2222 (pw:guest)Analysis/* otp.c */ int fd = open("/dev/urandom", O_RDONLY); if(fd==-1) exit(-1); if(read(fd, otp, 16)!=16) exit(-1); close(fd); sprintf(fname, "/tmp/%llu", otp[0]); F..
Can you get authentication from this server?Download : http://pwnable.kr/bin/loginRunning at : nc pwnable.kr 9003Bugauth()에 들어오는 input의 길이는 최대 0xc이다. 그런데 이 input을 ebp-0x8에 위치한 v4의 위치에 복사한다.따라서 ebp에 저장된 값을 원하는 값으로 덮어쓸 수 있다.auth()의 ebp에 저장된 값은 auth()가 return된 후에 진행되는 main()의 ebp가 된다.main()의 return address는 ebp+0x4에 위치하기 때문에, 이를 이용하여 실행 흐름을 조작할 수 있다.Exploitcorrect()에서 system("/bin/sh")을 호출하는 코드의 주소..
We made a simple MD5 calculator as a network service.Find a bug and exploit it to get a shell.Download : http://pwnable.kr/bin/hashhint : this service shares the same machine with pwnable.kr web serviceRunning at : nc pwnable.kr 9002Bugg_buf에는 0x400바이트까지 입력할 수 있는데, 최대로 입력할 경우 base64 decode하면 0x300바이트가 된다. 하지만 decode한 문자열을 저장하는 v3의 size는 0x200이므로 stack buffer overflow가 발생할 수 있다.ExploitLeak canary..
I made a simple brain-fuck language emulation program written in C.The [ ] commands are not implemented yet. However the rest functionality seems working fine.Find a bug and exploit it to get a shell.Download : http://pwnable.kr/bin/bfDownload : http://pwnable.kr/bin/bf_libc.soRunning at : nc pwnable.kr 9001Bug와 > 연산을 처리할 때 p가 tape의 범위를 벗어나지 않는지 검사하는 과정이 없어서 OOB가 발생할 수 있다.tape의 앞쪽에 있는 p 포인터를 임의의..
homeb0dy
'Wargame/pwnable.kr' 카테고리의 글 목록