乐在其中aauto.blog.chinaunix.net
qqmmcc123
全部博文(206)
其他技术(28)
模拟技术(32)
算法练习(2)
快手源码(17)
快手练习(8)
参考文档(40)
2013年(13)
2012年(8)
2011年(33)
2010年(152)
songyong
风雨过后
wb123456
格伯纳
cynthia
Phyllis6
浪花小雨
珊珊最好
WJG17735
分类:
2010-08-20 19:46:49
exe = raw.loadDll( )exe.api(函数地址,"void(void)" )
//外部CALL读取命令行//列出所有已运行进程的命令行参数import winex;io.open()io.print("请关闭所有监控软件")execute("pause") //按任意键继续//遍历所有窗口for hwnd,title,theadId,processId in winex.each( ) { if(title != "") //如果标题不为空 { //在外部EXE进程创建函数 try{ var getCommandLine_call = raw.remoteApi(processId,"string()" ,"Kernel32.dll","GetCommandLineA"); str = getCommandLine_call() io.print(processId,title,str) } } }
import win;func = function(str){ win.msgbox( "非法操作:" + str)}//转换为函数指针func_c = raw.tostdcall(func,"void(str)" )//打开当前EXE模块对象exe = raw.loadDll()/*AAuto限制你对内核对象使用topointer,tonumber等函数,以避免你随意的改动内核对象,这里我们需要一点技巧来突破此限制.设置限制的目的是在提醒你不要随意的对内核指针动手 :)*/struct = {pointer ptr = func_c } ptr = raw.convert( struct,struct ).ptr //利用静态类型转换,将重指针(cdata)转换为了普通指针(pointer)funcAddr = tonumber(ptr) //再把指针转换为内存地址//声明一个特殊的API,调用内部函数指针func_api = exe.api( funcAddr ,"void(str)" )//看来是一件很无聊的事,转来转去,我们只是调用AAuto函数而已.func_api("hello")
//QQ2010登录号码内存搜索示例import process//打开控制台io.open()//这个表用来保存QQ号,并排除重复的QQ号var qqtable = {};//遍历所有进程for processEntry in process.each( "QQ\.exe" ) { io.print("发现QQ进程,正在搜索进程......") prsc = process( processEntry.th32ProcessID ) //找出第一个有效内存地址 var mem_address,mem_size,mem_protect,mem_type = prsc.query(); if( mem_size ){ //循环查找 while( 1 ){ sleep(1) //查找下一个有效内存 mem_address,mem_size,mem_protect,mem_type= prsc.query(mem_address ); if(!mem_size) break;//找不到有效内存,退出 //读取字符串, var str = prsc.readString(mem_address,mem_size ); //先查找该内存是不是有类似QQ号码的字符串 var qq = string.match( str,"(\d{5,12})\p") if(qq){ //如果有类似的号码,再仔细分析各种可能出现的QQ号码数据 qq = string.match( str,"(\d{5,12})\\QQ\\Wintemp") qq := string.match( str,"(\d{5,12})\&ADSESSION") qq := string.match( str,"(\d{5,12})\&clientkey") qq := string.match( str,"(\d{5,12})\&utype\=") if(qq){ qqtable[qq] = true; io.print( qq ) }; } mem_address += mem_size }; }; //关闭对象 prsc.free(); }io.print("发现以下QQ号已登录")for(qq in qqtable){ io.print( qq )}
上一篇:call的用法
下一篇:aauto 调用 DOS 命令
登录 注册