Hacking

· Hacking
Chunk: 덩어리1. ptmalloc이 할당한 메모리 공간을 의미2. 헤더와 데이터로 구성- 헤더: 청크 관리에 필요한 정보-- 사용 중인 청크 + 해제된 청크로 구성- 데이터: 사용자가 입력한 데이터가 저장bin: 사용이 끝난 청크들이 저장되는 객체62개의 smallbin63개의 largebin1개의 unsortedbin2개의 사용되지 않는 bin - smallbinsmallbin[0] = 32smallbin[61] = 1008 바이트 크기의 chunk를 보관청크의 크기는 16바이트씩 커짐. - 원형 이중 연결 리스트, 먼저 해제된 청크가 먼저 재할당- FIFO, LIFO - fastbin- 단일 연결 리스트- LIFO- 청크는 서로 병합되지 않음. - largebin- 1024 바이트 이상의 크기를..
cmd_center cmd_centerDescription IP를 확인할 필요가 없습니다! 혹시 다른 명령어는 못쓰나요? 다른 명령어를 사용했다면 플래그를 획득하세요! References https://dreamhack.io/learn/2/1#3 https://dreamhack.io/learn/2/14#3dreamhack.io문제 분석12345678910111213141516171819202122int main(){         char cmd_ip[256] = "ifconfig";        int dummy;        char center_name[24]; // bof         init();         printf("Center name: ");        read(0, center..
문제 분석먼저 주어진 소스코드를 자세히 보자.1234567891011121314if __name__ == "__main__":    s = Seed()     seed = s.GenerateSeed()    print(f"Seed: {seed}")     while 1:        k = input("Key: ").strip().split() # input ex) 41 42 43 44        kl = [int(x) for x in k]         if s.Authentication(seed, kl):            break     print('DH{fake_flag}')Colored by Color Scriptercsmain문을 먼저 살펴보면,s = Seed() 함수의 리턴 값을 저장하..
cherry Cherry Description 주어진 바이너리와 소스 코드를 분석하여 익스플로잇하고 플래그를 획득하세요! 플래그는 flag.txt 파일에 있습니다. 플래그의 형식은 DH{...} 입니다. dreamhack.io 문제 보호 기법을 확인해보니 카나리도 없고 PIE도 적용되어 있지 않는 것을 확인할 수 있다. 소스코드를 읽어보니 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 void flag() { char *cmd = "/bin/sh"; char *args[] = {cmd, NULL}; execve(cmd, args, NULL); } int main(int argc, char *argv[]) { int stdin_fd = 0; int s..
mmapped mmapped Description 프로그램의 취약점을 찾고 익스플로잇하여 플래그를 출력하세요. 플래그는 ./flag 파일에 위치합니다. 플래그의 형식은 DH{...} 입니다. dreamhack.io 문제 먼저 바이너리 파일에 걸려있는 보호기법을 알아보았다. 일단 카나리를 제외한 보호기법이 걸려있는 것으로 보아 스택 오버플로우를 일으키는 문제일 수 있겠다고 생각했다. 그래서 소스코드를 읽어보니, 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 31 32 #define FLAG_SIZE = 0x45 int main(int argc, char *argv[]) { int len; char * fake..
sy46
'Hacking' 카테고리의 글 목록