hook注册表返回特定的值
By
admin
at 2022-07-30 • 0人收藏 • 724人看过
感谢: netfox提供源码
import raw.apiHook; var thread2 = raw.apiHook( "advapi32.dll", "RegQueryValueExW", "int(addr hKey,ustring name ,INT Reserved ,ptr dwType ,ptr lpData ,INT lpcbData )", function( hkey,name,Reserved,dwType,lpData,lpcbData ){ if(name == "abc"){ text = string.toUnicode("HFFCICCHGPINHIIDHFGHGQGQHHHXXGID"); //这里的lpData指针得注意的是, 注册表的项必须存在,才会有指针,不然指针为空 if(lpData){ //hook注册表应该注意的地方,这个类型必须给着返回 raw.copy(dwType,{int value=1}); //raw.copy等价于::copyMemory raw.copy(lpData,text,#text*2);//这里的Unicode编码长度要*2 //::CopyMemory(lpData,text,#text*2); //这个数据可以修改,可以不改(网上其他语言貌似必须修改) //raw.copy(lpcbData,{int value=#text}); } return 0; } return owner.callApi(hkey,name,Reserved,dwType,lpData,lpcbData); ; } ); thread2.install();
登录后方可回帖