原创
anhkgg
Windows Kernel/Rootkit/Reverse Engineer/Expolit/内核研究/逆向分析/漏洞分析挖掘
网站:<www.hankeer.org> 博客:<https://anhkgg.github.io>
展开
-
ChatGPT:hankeer-chatgpt食用指南详解
啥也不能发原创 2023-02-25 00:01:49 · 799 阅读 · 1 评论 -
SuperRDP2:开启Windows家庭版远程桌面功能(多用户)
SuperRDP2:自适应支持Windows家庭版最新远程桌面SuperRDP2SuperRDP是在rdpwrap基础上重写的项目,用于启用Windows家庭版的远程桌面,并且支持多用户。SuperRDP已经发布1年4个月了,提交了60多次commit,给网友解决了近100个问题(issue),支持了几十多个新版本的远程桌面。目前SuperRDP项目也有760左右的Stars,感谢大家对项目和我工作的肯定。有时候会同时收到很多网友的issue,需要支持他们的版本,其实还挺麻烦的,特别有时候忙的时候原创 2022-05-11 15:02:47 · 5424 阅读 · 2 评论 -
vs2005启动不了,手把手教你修复它
由于工作需要,还在用vs2005这个老古董,虽然很不喜欢。虽然很轻,但有两个原因不喜欢:调试总要加载符号,不让加非加,慢的无语时不时总是无缘无故无法启动无法启动这个事已经无数次出现了,重装,重启,屏蔽Assist均是无效。后来无意间点击了C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\devenv.com,可以启动了。但这次这个方法也不行了,实在是忍无可忍。决定干它。上调试器,启动devenv.exe。看到崩溃原原创 2022-03-19 16:23:06 · 1100 阅读 · 0 评论 -
使用魔法电脑安装最新华为电脑管家多屏协同
魔法电脑能够实时一键修改bios信息,无需重启,不破坏固件。官网http://www.hankeer.org/magic.html下载魔法电脑(MagicComputer)。运行魔法电脑,修改蓝色文字bios信息,点击魔法生效官网https://consumer.huawei.com/cn/support/pc-manager/下载电脑管家,双击正常安装即可搞定。具体操作视频可以看:https://www.bilibili.com/video/BV1zb4y1a77E...原创 2021-10-08 00:15:59 · 4759 阅读 · 0 评论 -
华为电脑管家PcManager多屏协同功能破解
让友商电脑兼容了一下华为系专属的多屏协同功能笔者注:文中出现的大写C,请轻声念出北京大爷的口头禅。华为刚发布多屏协同功能的时候,我就被种草了。后来一天在微博看到@Navis-MDT发布的一个体验视频,果然碉堡了。华为多频协同体验视频瞬间有点想从“米boy”转为“花粉”用户,这…当然是不可能的了。翻看微博回复,看到华为手机副总裁@李小龙Bruce_Lee也转发了该视频,并回复网友“为啥不...原创 2019-11-06 12:31:08 · 32621 阅读 · 12 评论 -
注入技术系列:一个批量验证DLL劫持的工具
作者:anhkgg日期:2019年11月3日很多时候,可能会对某个软件进行DLL劫持。而这个软件是否存在DLL劫持漏洞,需要去分析验证。比如通过IDA查看导入的DLL,或者LoadLibrary的DLL,然后慢慢排除某些KnownDlls,排除某些绝对路径加载的DLL…或者通过Windbg分析。虽然技术难度不高,但是挺费事的。本篇文章分享我找DLL劫持的方法,不一定是最佳,不过很...原创 2019-11-04 10:57:31 · 1405 阅读 · 0 评论 -
驱动下Wow64栈回溯和进程模块枚举
很久没写驱动代码,最近又摸了一下。在驱动中回溯调用栈,找到特定模块,获取模块地址、大小、路径等信息,然后…。堆栈回溯驱动中通常使用RtlWalkFrameChain来获取调用栈信息,接口如下:ULONGRtlWalkFrameChain(OUT PVOID *Callers, IN ULONG Count, IN ULONG Flags);//Callers一个PVOID数组,保存栈中...原创 2019-09-27 11:21:18 · 2959 阅读 · 0 评论 -
「神器」不容错过!逆向调试好帮手:神算子偏移计算工具。
「神器」调试好帮手:神算子偏移计算工具by anhkgg2018年12月11日0x01.写在前面做逆向调试的小伙伴应该都遇到过这种问题:在同时使用两大神器OD(或Windbg)和IDA逆向某程序时,调试中模块基址经常变化,而在IDA中默认为0x400000(或0x10000000),所以在调试到某个点想到IDA整体对比分析一下的时候,发现计算地址真的好麻烦,特别时在经常需要计算的时候,...原创 2019-09-27 11:20:30 · 2290 阅读 · 0 评论 -
微信PC端技术研究-消息防撤销
微信PC端技术研究-消息防撤销by anhkgg2018年11月30日0x1. 写在前面不知道大家有没有遇到过这种情况,微信收到消息,但是没有及时查看,然后闲暇时去看的时候,消息被撤销了,撤销了!那时肯定是无比无语,挠心挠肺,究竟发了什么?有没有一种神器可以防消息撤销呢,有的!其实移动端和mac上已经有人做了相关的插件,但是PC端貌似没人来啃这块骨头。当然也可能是我没找到,不过不...原创 2019-09-27 11:19:53 · 998 阅读 · 0 评论 -
一种通用DLL劫持技术研究
通用DLL劫持技术研究by anhkgg2018年11月29日写在前面Dll劫持相信大家都不陌生,理论就不多说了。Dll劫持的目的一般都是为了自己的dll模块能够在别人进程中运行,然后做些不可描述的事情。为了让别人的程序能够正常运行,通常都需要在自己的dll中导出和劫持的目标dll相同的函数接口,然后在自己的接口函数中调用原始dll的函数,如此使得原始dll的功能能够正常被使用。导出...原创 2019-09-27 11:18:46 · 375 阅读 · 0 评论 -
死磕python字节码-手工还原python源码
0x1.前言Python 代码先被编译为字节码后,再由Python虚拟机来执行字节码, Python的字节码是一种类似汇编指令的中间语言, 一个Python语句会对应若干字节码指令,虚拟机一条一条执行字节码指令, 从而完成程序执行。Python dis 模块支持对Python代码进行反汇编, 生成字节码指令。dis.dis()将CPython字节码转为可读的伪代码(类似于汇编代码)。结构...原创 2019-09-27 11:18:02 · 831 阅读 · 1 评论 -
Windbg USB3.0双机调试
配置需求目标主机有USB3.0 xHCI主机控制器,支持调试[Port1]Is Port User Connectable: yesIs Port Debug Capable: yesCompanion Port Number: 3Companion Hub Symbolic Link Name: USB#R...原创 2019-09-27 11:17:14 · 1611 阅读 · 0 评论 -
2345内核拒绝服务漏洞(3)- WORD的锅
漏洞概述软件网址:http://safe.2345.cc/版本:v3.7 X642345安全软件的驱动2345BdPcSafe.sys在ioctl(0x0022204C)接口处理中,对输入数据校验不严格,精心构造的数据可导致在处理过程中内存拷贝时溢出,然后bsod拒绝服务,甚至可内核提权。漏洞分析在IRP_MJ_DEVICE_CONTROL处理函数中,对0x22204C接口进行处理时...原创 2019-09-27 11:16:27 · 562 阅读 · 0 评论 -
2345内核拒绝服务漏洞(2)
漏洞概述软件网址:http://safe.2345.cc/版本:v3.7 X642345安全软件的驱动2345BdPcSafe.sys在ioctl(0x002220E4)接口处理中,对输入数据校验不严格,可构造数据中包含非法地址导致访问违例,然后bsod拒绝服务。漏洞分析在IRP_MJ_DEVICE_CONTROL处理函数中,对0x2220E4接口进行处理时如下所示:InputB...原创 2019-09-27 11:15:45 · 653 阅读 · 0 评论 -
微信PC端技术研究(2)-拿下语音
微信PC端技术研究-保存聊天语音by anhkgg(公众号:汉客儿)2019年1月31日2.6.6.280x0. 前言虽然一直知道CE,也用过一段时间,但一直用不好,可能太笨。最近又学习了某位大佬用CE的方法,大佬的一句话有点醍醐灌顶,然后有了新的感觉,然后开始尝试实践这篇文章。自己总结一下CE用法的核心思路:通过各种技巧搜索找到内存中关键数据,然后结合动态调试找到操作数据的函数...原创 2019-09-27 11:22:04 · 2161 阅读 · 0 评论 -
汉客儿2019支付宝加密红包设计思路
0x0. 前言去年春杰也弄了个加密红包,主要技巧在使用了汇编xor变换口令。今年在30天抢红包的时候突然想起这茬,怎么的也得再弄一个吧。作为技术公众号,不能太low了,怎么通过技术来实现加密红包,设计思路是个问题。思前想后,突然想到前两天弄的语音聊天记录,计上心来。0x1. 设计思路先想好一段逼格满满的口令祝福语,然后呢,哈哈…1. 语音口令用我醇厚磁性性感的声音把红包口令念出来,通...原创 2019-09-27 11:22:44 · 1415 阅读 · 0 评论 -
LINK : fatal error LNK1104: cannot open file "mfc42u.lib"(vc)
缺少unicode版本的lib在Visual Studio 6.0下编译一个同事发来的程序,出现如下的错误:LINK : fatal error LNK1104: cannot open file "mfc42u.lib"上网找了下,是因为:“mfc42u.lib是unicode版本的MFC运行库。在安装VC的时候缺省是没有安装的”。只好先将同事机器上“……\VC98\原创 2012-08-10 16:19:47 · 2017 阅读 · 0 评论 -
沙箱:概述
作者:anhkgg日期:2019年10月4日最早接触沙箱,对它的印象就是:sandboxie。因为学的是安全相关专业,在网上下载东西非常谨慎,就算通过了杀毒软件扫描,但是也怕有后门或者其他东西,毕竟我也可以静态过掉杀软。很多软件没有官网,各种下载站的东西真的是让人不放心。所以在下载某些软件后,只要不影响功能,基本都会用sandboxie来运行软件。如果不行,则放到虚拟机里。所以我对...原创 2019-10-05 10:04:52 · 1544 阅读 · 0 评论 -
程序员对私密聊天的乱想
唠叨群里有人推了个项目TgWechat,微信端对端加密插件,还特意@了我表示感谢,受宠若惊。隐私问题其实说了很久,有人说微信其实一直看着我们聊天,具体是怎么样的,咱也不知道,咱也不敢问吖…谁没个秘密呢,或者和朋友开个玩笑,或者和伴侣聊点"家常",如果这些内容暴露在别人眼中,确实有点尴尬,但毕竟咱也没乱说啥吖…不过加密聊天也可有能会给某些人提供某些庇护,导致出现一些安全问题,这也是一个大问题...原创 2019-09-27 11:26:19 · 457 阅读 · 0 评论 -
教会微信:突破文件发送100M限制
9102年了,我想大部分人使用微信的频率应该都会高于QQ了吧。以前在QQ传文件的时候,哪里会想到会有文件大小限制,几G、几十G的文件随意传。而现在,用微信传文件,很尴尬,只能传100M或更小的文件。为什么做这个限制?我想可能是因为微信一开始就是手机应用。最初手机存储空间并不像电脑那么大,所以微信可能认为手机存不下(而现在256G是标配了)。更重要的是,手机使用流量,大文件消耗流量更多,...原创 2019-09-27 11:25:43 · 9898 阅读 · 1 评论 -
一次美丽的误会引发对函数调用保护的思考
很久没碰wx了,最近想写个东西,就重新拿了起来,最新版本2.6.8.65(此时已经2.6.8.68)。找到以前分析过的发送文本消息接口,发现函数大变样,很明显的vm痕迹。.vmp0:1131CE33 000 push 2493AC03h.vmp0:1131CE38 004 call sub_1134AEB3.vmp...原创 2019-09-27 11:25:09 · 154 阅读 · 0 评论 -
SuperWeChatPC开源开放开发者SDK-打造你的超级微信
SuperWeChatPC开源开放开发者SDKanhkgg(公众号:汉客儿)2019年2月25日SuperWeChatPC刚开始仅仅只是PC微信多开工具,后来慢慢增加了更多功能,感谢朋友们的支持。为了方便更多开发者能够在PC微信做更多有意义的事情,现改变项目方向,提供两个针对不同人群的功能。普通用户依然可以直接使用原来的多开工具,直接下载可执行程序即可。针对开发者,提供WeCha...原创 2019-09-27 11:24:27 · 921 阅读 · 0 评论 -
一个go语言crackme分析
一个go语言crackme分析by anhkgg(公众号:汉客儿)2019年2月23日0x01.先看看直接运行看看,尝试输入,看看结果。一个console的程序,有提示信息,入手点应该很明显,找字符串,或者printf,scanf之类的函数。查个壳,是tElock 1.0 (private) -> tE! *,没脱过,常规脱壳方法尝试弄不掉,百度一番看到挺多经验分享的,但都...原创 2019-09-27 11:23:54 · 311 阅读 · 0 评论 -
微信PC端技术研究(3)-如何找到消息发送接口
微信PC端技术研究-如何找到消息发送接口by anhkgg(公众号:汉客儿)2019年2月18日0x0. 前言准备工具:Cheat Engine,OllyDbg,IDA。前一篇(微信PC端技术研究(2)-保存聊天语音)已经说过CE是什么,也应用CE研究了如何保存微信语音,这篇继续使用CE和OD来研究一下微信的消息发送接口。思路大概是这样:在消息框中输入内容之后,通过CE找到内容地址...原创 2019-09-27 11:23:22 · 952 阅读 · 0 评论 -
2345内核拒绝服务漏洞(1)
概述已经快2个月了吧,已经忘了是什么原因突然搞起了驱动漏洞,反正就是很有兴致地想挖掘一下驱动漏洞。在网上了解了基本的驱动漏洞挖掘方法,主要是通过ioctl接口进行挖掘,已经有很多相关fuzz工具了,比如ioctlbf、kDriver-Fuzzer等等。kDriver-Fuzzer的作者k0keoyo在2017年收获了100多个CVE,很牛逼啊,这个已经2018年了,再来挖此种类型的驱动是不是...原创 2019-09-27 11:14:24 · 333 阅读 · 0 评论 -
直播答题小能手Answerot(X)发布和更新
直播答题这么火,你不来踩一脚吗!直播答题为什么这么火,按我的理解,一个是有钱拿,还有一个是刺激,10 秒答题时间,有些题可能都没读明白,倒计时就来了,那一刻,你还能冷静?我反正是快懵逼了。那么就没有更优雅的答(拿)题(钱)方式了吗?那肯定是有的。项目地址:https://github.com/anhkgg/answerot在我发 answerot 的时候,才发现 github原创 2018-01-29 12:47:32 · 1093 阅读 · 0 评论 -
代码注入心得
完整的注入方法,请参考:http://www.cppblog.com/besterChen/archive/2009/02/15/73831.html我的心得:函数代码注入方法关键步骤:一、WriteProcessMemeory将函数参数写入目标进程二、WriteProcessMemeory将函数代码写入目标进程三、CreateRemoteThread创建远程线程,在目标进程中原创 2012-03-10 13:39:45 · 651 阅读 · 0 评论 -
scanf输入跳过及清空键盘缓冲区总结
参考:http://topic.csdn.net/u/20090305/10/2e60a242-2ba7-40ae-bb4e-1eda39ec0c19.html在有多个scanf接收输入的时候,一般都要在一个scanf执行完成后进行缓冲区清空,否则后面的scanf会跳过,自动接收键盘缓冲区无效字符(猜测)两种方法:fflush(stdin);// 清除键盘缓冲区原创 2012-05-22 17:01:11 · 5660 阅读 · 0 评论 -
cin获取只输入的回车符
参考资料:http://topic.csdn.net/u/20100308/23/a8bed6df-b742-4042-a8d0-86d277ba1ab4.htmlhttp://topic.csdn.net/t/20050216/20/3786253.html举例:#include int main(){char inb = 0;while(1)原创 2012-07-30 15:19:25 · 1351 阅读 · 0 评论 -
蓝牙API的问题
同样的问题:http://social.msdn.microsoft.com/Forums/zh-CN/visualcpluszhchs/thread/7d06eb88-36aa-41bb-8485-b1e75c65e02f/===================================================================================原创 2012-08-03 10:22:15 · 5125 阅读 · 1 评论 -
Windbg虚拟机xp调试环境配置
成功了的配置:虚拟机系统XP boot.ini添加multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="MicrosoftWindows XP Professional" /noexecute=optin/fastdetect /debug /debugport=com2/baudrate=115200这里面的com2口就是在虚拟机设置里添加原创 2012-08-09 15:27:24 · 1132 阅读 · 0 评论 -
csdn博客集
逆向http://blog.csdn.net/pll621/article/category/138401http://blog.csdn.net/cattom/article/category/220275原创 2012-08-13 15:12:03 · 655 阅读 · 0 评论 -
svn使用
http://blog.csdn.net/dily3825002/article/details/6717076http://developer.baidu.com/wiki/index.php?title=SVN%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B原创 2013-01-15 14:25:28 · 524 阅读 · 0 评论 -
记住c0000005 Access Violation 崩溃
出现这种错误原因总结:1. 指针异常。引用指针前判断指针是否为空2. 数据越界。一个典型例子,char ValueName[256];strncpy(ValueName,&value->Name,value->NameLength);value->NameLength 大于了256,致使ValueName访问越界,崩溃顺便记录崩溃调试原创 2013-01-16 12:17:10 · 12288 阅读 · 0 评论 -
MFC笔记总结
1. MFC系列(一)基础控件(Static\Edit\Button\Combo)2. MFC系列(二)CListbox3. MFC系列(三)CListCtrl4. MFC系列(四)CStatusBar5. MFC系列(五)CToolbar6. MFC系列(六)xx7. MFC系列(七)xxx敬请期待原创 2017-05-04 09:19:43 · 1125 阅读 · 0 评论 -
小Win,点一份APC(Apc机制详解)(一)
翻开翻开小Win的菜单,APC赫然在目...做工讲究,味道不错,是小Win的热门菜,我们点一来尝尝!吃了可以做很多事情...APC注入APC注入APC注入...细节来自于ReactOS源码分析。如果对这个发神经的文风有任何不适,请谅解,因为我确实神经了来一份APCring3这么做的点APC的正确姿势是使用QueueUs原创 2017-05-06 17:25:15 · 4148 阅读 · 0 评论 -
获取内网IP方法,细节!
在HOSTENT结构中得到IP地址的转换方法一直记不住,写个笔记记录一下吧!HOSTENT* host;IN_ADDR inAddr;char szHostName[MAX_PATH] = {0};SOCKET_ERROR == gethostname(szHostName, MAX_PATH )host = gethostbyname(szHostName);me原创 2012-01-06 12:50:45 · 729 阅读 · 0 评论 -
CTreeCtrl和CListCtrl的应用【仿Explorer】
1.获取系统ImageList//获得系统路径 char szSysDir[MAX_PATH]; CString strBuf; memset(szSysDir, 0, MAX_PATH); GetWindowsDirectory(szSysDir, MAX_PATH); strBuf = szSysDir; sprintf(szSysDir, "%s", strB原创 2011-11-14 19:29:09 · 1417 阅读 · 0 评论 -
Access Control
<!--body {font-size:14px; line-height:150%}a {font-size:12px; line-height:50%}p {text-indent:30px}li {text-indent:30px}#top {display:inline-box; width:40px; height:20px;翻译 2012-07-26 11:20:41 · 2373 阅读 · 0 评论 -
Rustls之源码分析总结(一)
作者:anhkgg 日期:2017-11-16rustls已经支持tls1.3,但是测试分析中使用的tls1.2,所以后面分析主要集中在tls1.2。主要分析的源码内容: 1. client和server的握手协议流程 2. rustls是如何进行数据传输的 3. 数据传输是如何加密解密的源码结构分为client和server两部分公共接口session.rs定义了SessionCommo原创 2017-11-17 14:21:55 · 1635 阅读 · 0 评论