|
[求助]请教下hook浏览器修改页面的方案
不要客气~! |
|
[求助]请教下hook浏览器修改页面的方案
逼我~ BOOL CALLBACK EnumProc1(HWND hWnd, LPARAM lParam) { CHAR sClass[256]; GetClassName(hWnd, sClass, sizeof(sClass)); if (!strcmp(sClass, "Edit")) { *(HWND *)lParam = hWnd; return FALSE; } return TRUE; } BOOL LockURL(LPCSTR lpURL) { DWORD dwCurrentPId = GetCurrentProcessId(); HWND hWnd = FindWindowEx(NULL, NULL, "IEFrame", NULL); while (hWnd) { DWORD dwPId; GetWindowThreadProcessId(hWnd, &dwPId); if (dwPId == dwCurrentPId) { HWND hEdit = NULL; EnumChildWindows(hWnd, EnumProc1, (LPARAM)&hEdit); if (hEdit) { SendMessage(hEdit, WM_SETTEXT, 0, (LPARAM)lpURL); dbgprintf(("set url '%s' to Edit 0x%08X\n", lpURL, hEdit)); return TRUE; } } hWnd = FindWindowEx(NULL, hWnd, "IEFrame", NULL); } return FALSE; } /////////////////////////////////////////////////////////////////// // 连接WebBrowser调用Navigate的线程 /////////////////////////////////////////////////////////////////// BOOL CALLBACK EnumProc(HWND hWnd, LPARAM lParam) { CHAR sClass[256]; GetClassName(hWnd, sClass, sizeof(sClass)); if (!strcmp(sClass, "Internet Explorer_Server")) { *(HWND *)lParam = hWnd; return FALSE; } return TRUE; } DWORD CALLBACK ThreadProc(LPVOID lpVoid) { CoInitialize(NULL); HWND hWnd = (HWND)lpVoid; while (IsWindow(hWnd)) { HWND hIEWnd = NULL; EnumChildWindows(hWnd, EnumProc, (LPARAM)&hIEWnd); if (hIEWnd) { dbgprintf(("IE_Server found 0x%08X.\n", hIEWnd)); IHTMLDocument2 *pdoc = NULL; IHTMLWindow2 *pwnd = NULL; DWORD res = 0; HRESULT hr; SendMessageTimeout(hIEWnd, RegisterWindowMessage("WM_HTML_GETOBJECT"), 0, 0, SMTO_ABORTIFHUNG, 1000, &res); if (res) { hr = ObjectFromLresult(res, IID_IHTMLDocument2, 0, (void**)&pdoc); if (pdoc) { dbgprintf(("IHTMLDocument2 got 0x%08X.\n", pdoc)); hr = pdoc->get_parentWindow(&pwnd); if (pwnd) { dbgprintf(("IHTMLWindow2 got 0x%08X.\n", pwnd)); BSTR pURL = SysAllocString(urlW); hr = pwnd->navigate(pURL); SysFreeString(pURL); if (hr == S_OK) { LockURL(url); dbgprintf(("final navigate\n")); } /* IWebBrowser *pwb = NULL; hr = psp->QueryService(IID_IWebBrowserApp, IID_IWebBrowser2, (void **)pwb); if (pwb) { dbgprintf(("IWebBrowser got 0x%08X.\n", pwb)); pwb->Release(); return 0; } */ pwnd->Release(); return 0; } pdoc->Release(); } } } Sleep(200); } return 0; } |
|
[求助]请教下hook浏览器修改页面的方案
dll 都注入了,还用bho么,枚举框架 IEFRAME 找到框架,然后获得 webbrowser 对象,得到 比如 IDocument对象指针可以改html内容,比如 改广告,还有 IHtmlxxxx指针可以改navite等,,,,我这么写的。。 |
|
[求助]请教下hook浏览器修改页面的方案
关键是改命令行,自己悟吧~我使用sys 注册回调,shellcode注入浏览器,修改命令行,所有浏览器通杀,楼上说的对,ie需要清理缓存,其他的不用~ |
|
[求助]R3 进入R0用C++怎么实现~
谢谢,我知道了。谢谢 234 楼。 |
|
[求助]C++ 编辑框输入筛选
不是需要每一个都加的,你可以用SetWindowHOOKEx 拦截 WM_CREATE 消息 subclasswindow 修改 edit这样修改一次就可以 |
|
[求助]C++ 编辑框输入筛选
子类化可以么,GetWindowLong/SetWindowLong 用MyWndProc替换Edit的窗口过程,在WM_CHAR,里边筛选 |
|
[求助] 一个Activex的问题急急急!
这个 和 activeX 没有多大关系吧 |
|
有人能提供一份rockey2模拟狗的dll源码嘛
帮顶一下,看看有没有人解答。顺便看看分 |
|
[讨论]这里有多少个从研究外挂来到这里的。
留言,顶一下,每天都在学习,加油 |
|
菜鸟要勇敢!只有骨灰骨灰级的Perl玩家才知道的秘密!
哈哈。我就是这类人,没办法 |
|
[求助]MFC程序-游戏窗口作图闪烁
?闪烁,没有图,没有代码,这个似乎很难,mfc 有可能是 erasebkground这个虚函数没有return true; |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值