[카테고리:] System

BOF 스터디 – 두번째

OS : Red Hat Linux 6.2 조건 : 랜덤 스택 아님, 실행 가능 스택, Buffer의 크기가 아주 작은 경우. 이번에는 Buffer의 크기가 쉘코드를 넣을 수 없을 정도의 작은 크기일 때 공격하는 방법을 알아 보도록 하겠습니다. vuln.c int main(int argc, char *argv[]) { char buffer[5]; strcpy(buffer, argv[1]); return 0; } 버퍼의 크기가 5 Byte 입니다. 이럴 …

BOF 스터디 – 첫번째

파도콘 CTF 이후 시스템 공부를 안한지 너무 오래 된거 같아 다시 한번 처음부터 Hacking: The Art of Exploitation 책을 보며 차근차근 공부해 보고자 한다… 작심삼일이 되지 않도록 꾸준히 해서 좀 잘해보도록 하자 -_- OS : Red Hat Linux 6.2 조건 : 랜덤 스택 아님, 실행 가능 스택, 충분한 크기의 버퍼 공격 타켓 소스 (vuln.c) int …

MD5 Hash Crack

오늘 웹서핑을 하다 발견은 괜찮은 툴과 사이트를 소개하고자 합니다. 먼저 첫번째로 툴을 소개하자면 여러 MD5 해시를 온라인에서 크랙해주는 사이트와 연동해주는 툴로 보입니다. 퍼포먼스에 대해선 잘 모르겠지만… 쓸만할거 같아요! 그리고 두번째로 사이트인데 이 사이트는 위 툴의 기능을 사이트로 옮겨놓은거라 봐도 무방할거 같네요. http://anqel.pl/narzedzia/md5/md5search.php

FSB (Format String Bug) 정리

/ 해당 문서는 공부를 하며 정리한 내용으로 틀린 부분이 있을수도 있습니다. / 해커스쿨 level20 문제를 풀어보면서 FSB (Format String Bug)에 대해 알아보자. #include <stdio.h> main(int argc,char **argv) { char bleh[80]; setreuid(3101,3101); fgets(bleh,79,stdin); printf(bleh); } 문제 소스는 다음과 같다. FSB는 printf(bleh) 와 같이 프로그래머의 귀차니즘(?)으로 인해 발생한다. 풀이과정은 다음과 같다. [level20@ftz level20]$ (python -c "print ‘AAAA’ …

리버스 텔넷

리버스 텔넷은 뜻 그대로 서버에서 본인의 컴퓨터로 텔넷으로 접속하게 하는 기술 입니다. 일반 적으로는 본인의 컴퓨터가 클라이언트가 되고, 접속하고자 하는 상대방의 컴퓨터가 서버가 되지만 리버스 텔넷은 이것이 반대가 된 주객이 전도된 상황을 의미 합니다. 이는 Netcat을 이용하여 할 수 있습니다. 윈도우 상이라면 자신의 컴퓨터에 2개의 콘솔창을 띄웁니다. nc -l -p 1024 nc -l -p 2048 …

스택 구조 확인.

/ 해당 내용은 공부를 하며 정리한 내용으로 틀린 부분이 있을수도 있습니다. / 해커스쿨(ftz.hackerschool.org:23) 워게임 Level 15번을 풀면서 정리한 내용입니다. 먼저 hint 파일을 보겠습니다. #include <stdio.h> main() { int crap; int *check; char buf[20]; fgets(buf,45,stdin); if (*check==0xdeadbeef) { setreuid(3096,3096); system("/bin/sh"); } } 소스를 보면 crap, check, buf순으로 선언이 되었음을 알수 있습니다. 스택이니 buf의 주소가 스택의 가장 …