일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 최강욱
- 킹덤 고근희
- 리리남매
- 제넥신
- 이지혜
- 은혜의 강 교회
- 미국 금리인하
- 불가피
- 고민정
- 성남 코로나 확진자
- 유튜버 김재석
- 픽크루
- 해킹
- 조희연
- 뭉쳐야 찬다
- 홍혜걸
- 이상형 만들기
- 학교 개학 연기 4월
- 스페인 코로나
- libtins
- 김재석
- 스콜피온킹
- 임영규
- 김영권 아내
- 성남은혜의강교회
- 김영권
- 폰폰테스트
- 금리인하
- 이태원 클라쓰 15회 예고
- 양적완화
- Today
- Total
목록전체 글 (256)
Dork's port
안녕하세요! 4번 문제입니다. 생각~보다는 오랜 시간이 걸렸네요. 문제 들어가시죠! 이번 문제의 핵심은 UPX 입니다. 혹시나 감을 잡지 못해 풀이를 보시는 분이라면 해당 키워드로 다시 고심을 하고 보시길 바랍니다. 먼저, 해당 프로그램을 IDA를 이용해 열어보겠습니다. main의 코드를 보니 조금 이상합니다. 흔히 알고있는 Stack Frame도 없고 바로 어떠한 함수를 부르는군요. 저 함수로 가보도록 하겠습니다.LOAD:000000000044A4F0 LOAD:000000000044A4F0 public start LOAD:000000000044A4F0 start proc near ; DATA XREF: LOAD:0000000000400018↑o LOAD:000000000044A4F0 call loc_4..
bof풀이를 해보도록 하겠습니다. 우선 C를 보도록 할까요? #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; } key의 값을 cafebabe로 바꾸어주면 되는 간단한 문제입니다. overme의 버퍼를 이용하여 key의 주소까지 덮어쓰면 자동으로 쉘을 띄워주는 간단한 문제이네요. 그럼 어셈코드를 ..
안녕하세요. 오랜만에 글을 쓰게되네요. pip을 이용하던 도중 업데이트가 가능하다고 해서 업데이트 후에 다음과 같은 에러가 발생하였습니다. $ pip3Traceback (most recent call last): File "/usr/bin/pip3", line 9, in from pip import mainImportError: cannot import name 'main 저의 경우 다음의 명령어로 해결하였습니다. $ hash -d pip3 pip이 에러가 나신다면 pip3대신 pip을 적어주시면 해결 됩니다 :)
가상 인터페이스는 리눅스 환경에서 디버깅할 때 아주 유용한 환경을 제공합니다(Network packet을 replay하여 디버깅할 수 있습니다). # modprobe dummy dum0로 라는 인터페이스 이름으로 생성해보도록 하겠습니다. # ip link add dum0 type dummy 그 다음 인터페이스를 UP시켜 주도록 하겠습니다. # ifconfig dum0 up 그러면 인터페이스가 정상적으로 동작하는 상태가 되었으므로 인터페이스로 패킷을 replay시켜 보도록 하겠습니다. # tcpreplay -i dum0 그 후 Wireshark등으로 pcap에 저장된 패킷이 그대로 dum0에 보인다면 성공한 것입니다!