WarGame/pwnable.kr(20)
-
pwnable.kr - leg
pwnable.kr leg문제입니다. 솔직히 리버싱과 어셈에는 자신이 많이없어서 구글링에 많이 의존했던 문제였습니다. main을 분석해보면key1, key2, key3이 있는데 이 세개를 모두 더해서 입력하면 flag를 출력해주는 문제입니다. 12345678910111213141516int main(){ int key=0; printf("Daddy has very strong arm! : "); scanf("%d", &key); if( (key1()+key2()+key3()) == key ){ printf("Congratz!\n"); int fd = open("flag", O_RDONLY); char buf[100]; int r = read(fd, buf, 100); write(0, buf, r); } ..
2018.08.22 -
pwnable.kr - mistake
pwnable.kr mistake문제입니다. 먼저 소스코드부터 확인해보겠습니다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051#include #include #define PW_LEN 10#define XORKEY 1 void xor(char* s, int len){ int i; for(i=0; i
2018.08.20 -
pwnable.kr blukat
후 이문제 삽질 엄청했죠..저게 저게;;하 ㅎㅎ 사진하나면 끝날듯합니다 cat password해서 저저.....cat : password: permission ddenied 저게 암호입니다어떻게 알았냐고요?? 1. 권한을 보니 내권한으로 되어있어서 읽는데 문제가없다 2. vi로 해도 똑같이 cat이 막혀있었다.. ㅎㅎ 앞으로 조금더 눈을 크게 뜨고 살려구요...
2018.08.19 -
pwnable.kr - coin1
후 방금 막푼 따끈따끈한 coin1문제 ㅠㅠ알고리즘에 약한나는 열심히 3시간동안 삽질을...별거없습니다 코인무게재서 이상한무게를가진거 하나 찾으면됩니다! ㅎㅎ고로 제가 보여드릴자료는 코딩한 그게 전부군요...ㅠ 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051from pwn import * r = remote("pwnable.kr", 9007)divnum = 2def cal(num, result, divnum, a, b, flag) : payload = "" if (int(result)%int(10) == int(9)) : startnum = a elif (int(result)%int(1..
2018.08.19 -
pwnable.kr - bof
세번째 pwnable.kr 문제풀이군요.중간중간에 다른문제들 풀다와서 풀이가 많이 느린 것 같습니다 :) 먼저 문제를 확인하면 소스코드하고 파일 하나를 주는군요. 12345678910111213141516171819#include #include #include void func(int key){ char overflowme[32]; printf("overflow me : "); gets(overflowme); // smash me! if(key == 0xcafebabe){ system("/bin/sh"); } else{ printf("Nah..\n"); }}int main(int argc, char* argv[]){ func(0xdeadbeef); return 0;} Colored by Color Sc..
2018.08.19 -
pwnable.kr - random
pwn.kr random문제입니다.소스코드를 보면 random값하고 제가 넣은 input하고 xor연산을 통해서 deadbeef와 같으면 flag를 줍니다. 그럼 random값만 알게된다면 쉽게 풀 수 있습니다.random값을 알기위해서 ltrace명령어를 사용합니다. python으로 xor연산을 하면? 그대로 입력하면?(grin)
2018.08.16