목록list (398)
y0u_bat
보호되어 있는 글입니다.
최근에 webkit에 대해 관심있어서 공부 하고 있습니다. 원문보고 전부 번역한건 아닙니다. (발번역...) 중간중간 제가 공부하면서 작성한 내용이 있습니다. 공부하면서 작성하는거라 틀린 내용이 있을수있습니다. - http://phrack.org/papers/attacking_javascript_engines.html (원문)- http://cd80.tistory.com/104 (104, 106, 107) Javascript engine overvlew자바스크립트 엔진에서는 대체로하나 이상의 컴파일러 인프라를 포함하는 JIT 컴파일러 입니다.자바스크립트는 VM에서 작동한다.런타임에서 객체나 함수를 제공합니다. NaN-boxingJSC에서는값을 Pointer Double, Interger 3개로 나눠 저장..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
발표자료입니당
[DEFCON 2017] mute샌드박스문제이다. 샌드박스 때문에, write를 syscall 못할때, cmp를 이용해서 time-base로 blind로 플래그를 뽑아내는 문제이다. MitigationNX만 걸려있고, 나머지는 안걸려있다. VulnerabilityMain 함수이다. buf에 4096크기만큼 rwx권한으로 메모리 맵핑해준다.그리고 read로 buf에 4096 크기만큼 입력받는다. 그다음에 buf에 담긴 내용을 실행한다.이문제는 샌드박스 관련 문제이다. dropSyscalls() 함수를 한번 보자. 샌드박스가 돌아가고 있고, Rule에 syscall 0x0,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0xa,0xb,0xc,0x3b만 호출 될수있도록 추가 되어 있다. 해당 syscall은..
[DEFCON 2017] SmashmeDEFCON 2017 예선전에서 제일 쉬운 문제다.간단한 bof 문제이고, 조건 하나만 맞춰 주면 된다. MitigationVulnerability gets로 입력을 받아서 stack buffer overflow가 일어난다. 여기서 조건 하나를 맞쳐줘야 된다.입력한 변수에 "Smash me outside, how bout dAAAAAAAAAAA" 가 포함되어 있어야된다. sub_400320 함수가 strstr 함수이다. main 함수에서 ret instruction이 실행되기전에 레지스터를 보면, rdi가 입력받은 변수의 시작점인것을 알수있다.그래서 jmp rdi 가젯이 있나 가젯을 검색해보았다. 0x00000000004c4e1b : jmp rdi바이너리에서 이러한 ..
[DEFCON 2017] beatmethedl심심해서 간만에 CTF 참여해서 풀어봤다.unlink를 해서 푸는 heap문제다. 오랜만에 CTF 해서 그런지 재미있게 했다. MitigationLogin로그인검사를 하는데, 바이너리내에 있는 문자열을 strcmp으로 비교한다. ID를 mcfly로, PW를 awesnap로 해주면 로그인이 된다. Memu 바이너리의 메뉴이다. 일반적인 Heap 문제처럼 추가,출력,삭제,수정 기능을 가지고 있는 전형적인 Heap 문제이다. 해당 바이너리내에 malloc함수와 free함수가 구현되어 있다. if (__builtin_expect (FD->bk != P || BK->fd != P, 0)) 구현된 함수에 이루틴이 없어서 unsafe_unlink가 아닌 unlink를 통..
보호되어 있는 글입니다.
보호되어 있는 글입니다.