tls注入

tls injection

我们知道,全局变量,是所有线程都可以访问的。为了避免同一变量被不同线程访问带来的影响,引入了TLS(Thread Local Storage),它是一直变量存储方法,该变量在它所在的线程内是可以全局访问的,但是不能被其他线程访问。

TLS回调函数是指,每当创建/终止进程的线程时会自动调用执行的函数(前后共调用两次)。创建进程的主线程时也会自动调用回调函数,且其调用执行先于EP代码。基于这个特性TLS回调函数常用于反调试,使得恶意代码在EP执行前判断是否处于调试状态。

而TLS注入是指:A进程通过修改B进程的tls结构的AddressOfCallBacks指针,使其指向事先写好的shellcode。这样当B进程的TLS回调函数触发时,就会执行到shellcode。

posted @ 2024-01-25 15:30  wjiQWQ  阅读(10)  评论(0编辑  收藏  举报