All
-
리눅스 명령어 정리 (1)Pentesting/Linux 2019. 1. 17. 19:26
▷ at 명령어:명령어나 스크립트 파일이 특정 시간에 실행되도록 예약하는 기능을 수행한다. 시스템 사용이 적은 시간 또는 필요한 시간에 지정된 작업을 자동으로 처리하고자 할 때 유용하다. [문법]: at [옵션][시간][날짜][+증가시간][옵션]: -q queue이름을 지정, -m 작업이 완료될 때 사용자에게 메일을 보낸다 , -f file에서 작업 명령을 읽는다-l 예약된 작업 목록을 보여준다 , -v 작업이 수행될 시간을 보여준다 , -d 예약된 작업을 삭제한다.[시간]: hh:mm 시간:분으로 설정한다(예: 23:10)[날짜]: yyyy-mm-dd 년-월-일 구서으로 표현한다, today,tomorrow 오늘, 내일로 지정할 때 사용한다. [TEST]>at 00:40 2015-03-08>at>ech..
-
lvl 13Wargame/HackerSchool FTZ 2019. 1. 17. 19:22
→ 힌트 정보 열람. → BOF 문제로 추측된다. 아래에 위치하는 분기문에서 해당 문제의 의도를 알 수 있다. if(i!=0x1234567) → 즉, i = 1234567을 유지한채로 버퍼오버플로우 페이로드를 구성해야 한다. 이를 위해선, 변수 i의 위치를 정확히 파악해야 한다. 먼저 gdb로 디버깅한다. [level13@ftz tmp]$ gdb -q attackme(gdb) set disassembly-flavor intel(gdb) disas mainDump of assembler code for function main:0x080483c8 : push ebp0x080483c9 : mov ebp,esp0x080483cb : sub esp,0x4180x080483d1 : and esp,0xfffffff..
-
[Toddlers's Bottle] collisionWargame/pwnable.kr Challenge 2019. 1. 17. 19:20
→ 문제는 아래와 같다. → 로그인 후 파일 확인. → col.c 소스코드 확인. → 문제 해결을 위해선, hashcode == check_password(artv[1])의 값이 참으로 만들어야 한다. 이 때, hashcode 값은 0x21DD09EC이고, check_password(argv[1])의 값이랑 비교한다. → check_password 함수를 살펴보면, 인자 값으로 argv[1] 값을 받고 이를 ip 배열로 받아 더하여 리턴한다. → 두번째 분기문에서 strlen(argv[1]) != 20 에 의해 실행 인자 값은 반드시 20바이트이여야 한다. → 결국 20바이트의 passcode 인자 값을 통해 check_password 함수 연산 결과와 0x21DD09EC의 값이 동일하게 만드는 문제이다..
-
lvl 12Wargame/HackerSchool FTZ 2019. 1. 15. 22:18
→ 힌트 정보 열람. → setreuid 함수와 gets 함수를 볼 수 있음. bof 문제로 추측. 따라서, gdb를 통해 디버깅. [level12@ftz tmp]$ gdb -q attackme(gdb) set disassembly-flavor intel(gdb) disas mainDump of assembler code for function main:0x08048470 : push ebp0x08048471 : mov ebp,esp0x08048473 : sub esp,0x1080x08048479 : sub esp,0x80x0804847c : push 0xc150x08048481 : push 0xc150x08048486 : call 0x804835c 0x0804848b : add esp,0x100x080..