본문 바로가기

2013년도 글/System

다각적으로 풀어본 포너블600 저번에 푼 ARS의 포너블 600문제의 질문이 들어온 겸 600문제를 다각적으로 풀어보았다. 그전에 알아둬야 하는 점. code 영역의 foo 함수라던가 main 함수까지는 주소가 랜덤하지 않다. 1. foo 함수 주소를 브루트포싱 하는 방법foo에서 시스템 함수가 stack에서 입력을 받는데 aslr이 적용되어 stack의 주소가 계속 변경되어 인자가 불규칙하게 들어간다. 하지만 우분투는 aslr로 바뀌어봤자 2^12승만큼밖에 바뀌지 않는다. 따라서 foo 함수의 주소를 확인 한 후 계속해서 브루트포싱을 하면 쉘을 쉽게 딸 수 있다. 이때 일정 확률로 foo 뒤의 값을 foo안의 system인자로 받으므로 bash를 입력해준다. foo:0x080484ac./exploitme $(python -c 'pr.. 더보기
[System] Buffer Overflow Foundation Document 보호되어 있는 글입니다. 더보기
[System] Buffer Overflow part2. 보호되어 있는 글입니다. 더보기
[System] Buffer Overflow Part1. 보호되어 있는 글입니다. 더보기
[System] Malware Analysis 보호되어 있는 글입니다. 더보기
[System] Malware 보호되어 있는 글입니다. 더보기
[System] 시스템 보안 설정 보호되어 있는 글입니다. 더보기
[System] Force Attack 보호되어 있는 글입니다. 더보기
[System] 리눅스 인증의 구성 요소 보호되어 있는 글입니다. 더보기
[System] Password Cracking 보호되어 있는 글입니다. 더보기