(glibc) malloc - checks
[malloc] fastbins size check [malloc] smallbins bk check & unlink [malloc] unsorted bin size check [malloc] unsorted bin unlink [free] MINSIZE check [free] invalid next size (fast) [free]...
[malloc] fastbins size check [malloc] smallbins bk check & unlink [malloc] unsorted bin size check [malloc] unsorted bin unlink [free] MINSIZE check [free] invalid next size (fast) [free]...
* ASLR is disabled application’s initial heap 프로그램이 malloc()등 직접 heap을 할당받는 코드를 실행하지 않더라도, 기본적으로 ` 0x21000`(132KB) 크기의 initial heap을 가지고 있으며 이 heap은 main_arena에 해당한다. 00400000-00401000 r-xp 0...
malloc sequence 너무 큰 heap memory 할당을 요청하는 경우, mmap()을 사용해 아예 다른 곳에 공간을 할당한다. * mmap’ing threshold 값은 따로 설정되지 않은 경우 dynamic하게 결정된다. 보통은 대략 0x20800 이상일 때. 요청에 맞는 fastbin에 chunk가 있는 경우 반환한다. 요...
circular doubly linked list fastbin을 제외한 나머지 bins는 circular doubly linked list 구조를 사용한다. fastbin range에 속하지 않는 chunk일 경우, chunk 하나만 free()해도 <main_arena+88>(unsorted bin-8)을 가리키는 fd/bk가 생성된다...
Heap 요청에 따라 할당되는, chunk의 형태로 나뉠 수 있는 (인접한)연속된 메모리 영역을 의미한다. 예전에는 한 어플리케이션에 하나의 힙만 존재했지만, 지금은 한 어플리케이션이 여러 힙을 가질 수 있다. 각각의 heap은 하나의 arena에만 속할 수 있다. Chunk 실제로 malloc()으로 할당/반환받게 되는 영역을 말한다. 8 byte...
Plotly? Python, JS, R을 지원하는 오픈소스 차트 라이브러리. https://plot.ly/python/user-guide/ https://plot.ly/python/reference/ https://plot.ly/python/line-charts/ https://plot.ly/python/network-graphs/ ...
graph networkxanaconda에 포함되어 있음. 사용법도 간단하지만 룩이 구리고 pure-python implementation이라 속도가 굉장히 느리다. graphviz 논문에 나올법한 상당히 구식 룩이나 쓰기 편함. 활용도가 높음. 사용하기 위해서는graphviz 라는 프로그램 자체와 이를 python과 연결해주는 라이브러...
symbol 없을 때나 PIE가 걸려있을 때 디버깅 Entry point + offset으로 bp 걸면 되는데, offset은 IDA로 알아내고, Entry point는 0x00에 bp걸고 실행한 다음 첫 번째 call에서 리턴되는 값( $rax )이 Enrty point 또는 그냥 info file Entry point == start...
RELocation Read-Only !!! readelf -S결과가 ` W`권한이 있는 것으로 나오더라도 실제로 해보면 fault가 발생하므로 주의. Partial-RELRO default 옵션이며, .ctors(.init\_array), .dtors(.fini_array), .jcr, .dynamic section이 Read-Only 상태가 된...
ASLR : Address Space Layout Randomization 프로세스의 가상 주소공간에 heap, stack, libc( shared library’s plt ) 등이 mapping될 때 그 위치를 프로그램 실행 시 마다 랜덤하게 변경하는 기법. windows는 vista 이상, linux는 kernel 2.6.12 이상에서 적용. e...