Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- packet flow
- REDIS
- Compiler
- C언어
- Docker
- .net core 7
- 취약점
- iptables
- doupdate
- BOF
- rfc5508
- LOB
- level trigger
- packet filter
- ioctl
- 풀이
- wrefresh
- .nret core 배포
- epoll
- vtable
- edge trigger
- DOCKER-USER
- cbpf
- wnourefresh
- epoll_wait
- ncurses
- architecture
- mvwin
- 어셈블리어
- NAPT
Archives
- Today
- Total
목록vtable (1)
Tuuna Computer Science

C++ vtable gdb로 살펴보기 개론 C++의 상속관계에서 다형성을 구현하기 위해서는 Virtual 함수를 사용하여 구현한다. 이를 gdb를 통해서 어떤식으로 구성하는지 알아보자. #include class A { public: virtual void a_func() { std::cout A *ptr = nullptr; 0x00000000004011b8 : mov QWORD PTR [rbp-0x8],0x0 => ptr = &a; 0x00000000004011c0 : lea rax,[rbp-0x18] 0x00000000004011c4 : mov QWORD PTR [rbp-0x8],rax 그리고 parent()함수를 호출하는 어셈블리 코드인데 좀 더 세부적으로 분해를 해보자. => ptr->parent..
C++
2023. 7. 11. 22:46