Hacking

    Webhacking.kr 4번 풀이

    마지막이 == 인걸로 보아 base64인거 같다 복호화를 하면 c4033bff94b567a190e33faa551f411caef444f2 로 나오는데 40 글자인걸로보아 SHA-1인거같다SHA-1로 복호화를 2번 하면 test가 나온다

    Webhacking.kr 1번

    Webhacking.kr 1번 풀이 --------------------- ----- index.phps ----- 쿠키를 변조해야 하는데 5보다 크고 6보다 작아야하고 0~9까지 숫자는 불가능하다 소수점을 사용하여 5~6사이의 소수점으로 user_lv 쿠키값을 변조해주면 풀린다. 크롬 확장프로그램 EditThisCookie를 사용하여 변조해주자. EditThisCookie다운

    LOB 페도라 FC3 evil_wizard -> dark_stone

    ※ 저번 문제와 달라지점은 로컬환경에서 리모트 환경으로 바뀐것과 입력함수가 바꼇다는 점이다. 저번문제와 똑같이 Got Overwirte 로 풀어보겠다. ※ 구해야할 것 strcpy@plt printf@got printf@plt /bin/sh bss ppr system ----------------------------------------------------------------------- 순서대로 strcpy@plt, printf@plt, printf@got 이다. 비밀번호는 let there be light 이다.

    LOB 페도라 FC3 hell_fire -> evil_wizard

    주석에 Got Overwriting 가 명시되어있으므로 Got Overwriting 로 풀어보겠다.strcpy@plt 를 이용하여 printf@got 를 system 함수의 주소로 한 바이트씩 덮는다.그리고 printf@plt 를 호출하여 systm 함수를 실행시킬수있다.그러므로 우리가 구해야할주소는 strcpy@plt, ppr, system@plt, bss영역주소, /bin/sh 주소를 구해야한다. strcpy@plt의 주소는 0x0804894이다. ppr의 주소는 0x0804854f printf@plt : 0x08048424printf@got: 0x08049884 System: 0x7507c0 c0: 0x8048188 07: 0x08048148 75: 0x8048504 00: 0x08048128 bi..

    LOB 페도라 FC3 dark_eyes -> hell_fire

    ※ 소스를 보면 fgets로 temp에 입력받은후 sfp를 세이브하고 temp에 입력받은값을 버퍼에 복사한다음에 세이브해놨던 sfp를 복구시킨다. 푸는 방법은 system 함수내에 do_system 함수가 있고 그안에 execve 로 쉘을 실행시키는 부분을 이용해서 풀수있다, system 함수안을 보면 do_system 함수가 있고 do_system 함수 안을 보면 execve 함수가 있다. RET을 execve 함수의 인자를 받기 시작하는 do_system+1124로 돌리면된다. 페이로드: 버퍼268+ret(do_system+1124) 비밀번호는 sign me up 이다.

    LOB 페도라 FC3 iron_golem -> dark_eyes

    소스를 보면 sfp를 세이브했다가 버퍼를 복사후 다시 복구시킨다. sfp를 복구시키기 때문에 fake ebp같은 ebp조작은 불가능하다. execve 함수를 이용해서 Ret sleding 기법으로 풀어보겠다. Ret 주소는 0x080484b9 이다. execve 함수의 주소는 0x7a5490 이다. 0x80484b9 를 자세히 보면 ASLR이 적용되어 있기 때문에 랜덤하게 바뀌는 스택이 있다. 안변하는 스택중에 0x0070eab6을 자세히 보겠다. 값이 별로다.다음에 있는 0x0083eff4를 보면 그 다음이 NULL이어서 적당해보인다. (NULL로 함수 인자구분) 쉘을 띄우는 파일을 작성해주고 심볼링링크를 \x3c\ed\83 으로 걸어준다. 페이로드: 버퍼[280] + ret*3 + &execve 비밀..