https://www.bilibili.com/video/BV12Z4y1H7ih?from=search&seid=8431550096296608433
1.考察点:技术、算法、思维逻辑
技术:开发、逆向、数据结构、调试反调试、PE结构
一、开发:应用层开发、内核层开发、设计模式
应用层:
1.线程间的同步方式有哪几种?
2.线程分为普通线程和GUI线程,有什么区别,普通线程能否成为GUI线程呢?
3.什么是进程?
4.进程间通信的方式?
5.通信:TCP连接的三次握手和四次挥手
6.注入:DLL注入有哪几种方法?
7.如何防止远程线程注入?
8.详细说一下 inline HOOK的原理
9.如果你在inline HOOK时候,正好有代码执行到相关位置怎么办?解决办法?
10.已知一个dll里面的很多函数(API)都被inline HOOK了,如何操作,才能绕过HOOK?
内核层开发:、NDS、内核数据结构
设计模式:单例模式、工厂模式对其进行复述
反向:汇编,
1.jump几种,占几字节?
答:短跳 2字节 ;近跳 3字节;远跳 5字节
2.ret是函数返回时使用,那么iret是什么时候使用呢?
1.想让调试器在下一条汇编语句上停止,怎么做
2.软件断点的实现原理
PE结构
字段
1.PE结构第一个字段的值是什么?
2.内存加载需要执行哪几个步骤?
智力题
1.量杯问题
2.金条问题
3.老虎过河