掌握LOLBIN技巧:利用注册表藏身于Windows系统之中
作者:FancyPig | 发布时间: | 更新时间:
相关阅读
视频讲解
在本期的视频中,我们将深入挖掘一种最新且令人着迷的LOLBINs(借用合法二进制文件)技术,这是我最近发现的,也是我现在最喜欢的技巧之一。如果你能做得好,这将让你的行为几乎完全无法被检测到。🤫
我们将探讨如何在HKLM注册表中添加一个键,以在SYSTEM\CurrentControlSet\control\Terminal Server\Utilities\query下运行自己的操作或小型子命令。这个技术是由Twitter上的Gregorez Tworek或OgTweet分享的,他总是能输出一些超级酷的LOLBIN技术,我必须向他致敬!🙌
然而,微软的文档对于如何利用这些命令并未提供深入的说明,所以这就是我们今天要做的事情。我们要深入Windows注册表,去研究如何真正玩转它们!🔎
图文讲解
这可能是我新喜欢的lolbins(借用合法二进制文件)或者“活在土地上”的技术之一因为如果你做得好,它可以很好地融入其中。看看吧。你在HKLM中添加一个注册表键,在SYSTEM\CurrentControlSet\control\Terminal Server\Utilities\query下

你可以阶段性地运行自己的操作或小型子命令,可以是任何东西。执行它所需要运行的是QUERY命令,然后是你为你的子过程决定的任何名字。一如既往,功劳归功于人。这是另一颗宝石,来自Twitter上的Gregorez Tworek或OgTweet。请原谅我。我知道我总是弄错你的名字,我的朋友。但是,伙计,他总是输出一些超级酷的lolbin技术或者一些只能来自大量内置的原生Windows应用程序和程序的奇特习性

这个是在2022年12月27日公布的,或者至少那是他在Twitter上谈到这个的时候。但我认为这是金子。我不会撒谎。如果你看一下微软的文档,远程桌面服务,终端服务,命令行工具,参考,或其他什么,它有点只是简单地提到这些,但实际上并没有详细地挖掘至于你如何可以真正玩他们和操纵他们在Windows注册表。他们列出了所有这些命令,所有你可能能做的与RDP或终端服务或许多这些远程桌面实用程序相关的不同的事情。

他们实际上列出了,嘿,查询终端服务器,查询用户,等等,等等,等等。如果你去看一下所有的命令,在QUERY下的所有命令,作为你可以运行的工具,它只是告诉你,看,它显示有关进程、会话和远程桌面会话主机服务器的信息。这就是全部了。

它给了你一些可以运行的参数,但我没有找到参考资料,或者至少是一个说明,看,这是在Windows注册表中修改和配置的。

你可以看看QUERY进程或其他任何文章具体到每个子命令,但他们只是告诉你那种那个做什么,但不确切它来自哪里或它是如何组合的。我不太清楚。

他们展示了一些例子和其他相关的链接,但像,就是这样。这就是唯一的文章。对于会话也是如此。终端服务器也是如此。对用户来说也是如此。他们所展示的只是命令的用法,但没有更多的它是如何在后台形成的。所以无论如何,让我们继续玩这个。我将启动一个终端。我现在是在我的Kali Linux虚拟机里,但我已经提前设置好了这个注册表命令,这样我们就可以用它来工作。

看看吧。这是语法,只是使用老式的reg.exe DOS命令。

你把这个注册表键添加进去,设置新键的值为LOLBIN,但你可以把它设置成你想要的任何东西。类型应该是REG_MULTI_SZ

然后看起来他们在使用像转义的零,我相信这是一个空字节的代表,我认为将这种元素作为注册表内部的许多堆叠值之一是相当有趣的,或者那可能只是他们新行的某种表现形式。

因为如果我们在注册表内看一下,让我跳到一个Windows虚拟机,在那里我可以打开注册表编辑器

而我们将继续前进,并进入该位置。

没错。HKLM,系统当前控制集,控制终端服务器实用程序。

看看这些条目,因为app服务器在这里存在,进程会话用户,winsta,而且看起来它在运行一个子命令,像qprocess.exe。

我可以在这里自己做这个吗?让我把它启动起来。我将继续运行query

你会看到我们需要提供的语法,是任何这些子命令你可以作为参数传递。输入query user,它只是列出了,好的,这里的任何活动用户。

但那只是简单地尝试运行quser.exe。我可以只运行quser.exe吗?和它是完全一样的东西。

你传递给query的所有参数仍然会漏掉,并通过下面的子命令或可执行程序运行但如果我在这里双击quser,其中一个条目,看,所有这些都有这种新行来表示,我不知道那个反斜线0是否与此有关,可能我只是没弄明白。

嘿,所以在以前的视频中,我们展示了很多这些LOWBIN或靠“土地生活”的技术,无论是持久性机制还是什么,我们只是用一个简单的,无辜的、良性的有效载荷,如弹出的计算器应用程序。这就是我们在Ogtweet的Twitter回应中看到的。但是,如果能做一些更现实一点的事情,就会非常酷,比如尝试布置一些东西,不管是一个反弹shell,不管是另一个植入物,一些其他的信标,等等。因此,在这个视频中,我要去使用HoaxShell,其他很酷的应用程序之一,我们可以用它来尝试在Windows上组装一个反弹shell。

但是,现在这是由AMSI或反恶意软件扫描界面,或现代版本的Windows上的AMSI检测。

我需要提供我的IP地址,是192.168.111.166。

现在我可以用这个作为监听器运行HoaxShell

它就会吐出一大堆PowerShell语法以编码的64进制,同时它在等待一个连接。

我可以继续下去,并复制这整个事情。但回到我的Windows虚拟机上,很明显,如果我试图打开一个终端,继续并把这个粘贴到来运行这个反弹shell,我们得到一个错误。

因为,看,这包含恶意内容,它已经被你的杀毒软件阻止了
当然,Windows Defender正在做它的事情。如果我真的看一看在病毒和威胁保护中心,看看这个。我们确实有,哦,甚至有一个警报。

好吧,就在这里避开。但如果我向下滚动进入病毒和威胁保护,哦,不管怎样,云交付保护是关闭的,但这很好。实时保护仍然在做它的事情。

我们可以尝试使用FlangVix的网站和工具amsi.fail来破解AMSI。如果我们要生成一个有效载荷,它会尝试给我们,哦,Matt Graber的反射方法或Rostamouse的一些不同的方法,看看我们是否可以,哦,只是为AMSI扫描缓冲函数进行阶段修补。现在,这些过去对我来说都是可行的,但我确实认为,即使这些现在仍然被标记。

如果我试图粘贴这个,它仍然会触发并告诉我,看,嘿,你不能这样做。脚本含有恶意内容,而且已经被AV屏蔽了。

我试过的每一个,即使生成一个编码版本,我们就还是会得到同样的错误。我不相信我能从amsi.fail中得到很多运气来尝试破解AMSI。

因此,让我们不要使用这个普通的Windows 11虚拟机来进行我们的LOLBIN测试。让我们继续使用一个单独的虚拟机,在那里我仍然可以进行同样的过程。但只是为了展示,如果我继续前进并添加一个,我不知道,像是与命令行上的query命令融合的东西。

让我试试从这些其他命令中提取语法,然后重新命名,使用SQL数据库连接器。

我想这样就可以很好地融合在一起了我们就弹开calc.exe,对吗?

所以让我们保存它。现在从我的终端,我在这里再开一个。作为一个低权限的用户,我可以查询SQL数据库连接器

然后这个无聊的计算器exe文件就被我们打开了。

不错。现在你当然可以将这个阶段到一些二阶持久性机制,也许隐藏在PowerShell脚本或批处理脚本,只是被自动运行从其他计划任务或服务或任何。哦,嘿嘿,顺便说一下,如果你正在使用大量的这些“活在土地上”技术为你的红色团队参与或为你的渗透测试,并且,你可能不想在事后处理写报告的问题,你也许应该看看我们的赞助商。嘿,请允许我向这个视频的今日赞助商PlexTrac表示一些爱和支持。当你在进行渗透测试时,你就在这个区域了。你正在疯狂地攻击,你很开心收集发现,打掉漏洞和赚取域名管理。但你可能会害怕之后的工作。你必须要写一份报告。但写一份渗透测试报告不一定是枯燥无味的,也不一定是漫长而乏味的。事实上,这可以说是轻而易举。你甚至不必担心你的报告,因为PlexTrac可以为你处理。如果你不熟悉,PlexTrac是首要的网络安全报告和协作平台它使渗透测试人员、红色团队人员和网络安全团队更加高效、有效和主动。PlexTrac消除了报告的痛苦,让你在红队和蓝队之间进行协作,实现有效的紫色团队和更快的补救。PlexTrac平台让你轻松地汇总调查结果,从编写数据库和内容库中拉入可重用的内容,并实时跟踪和测量参与进度。从CSV文件或Nmap或Nessus和许多其他你喜欢的工具中导入资产。有超过25个集成,你可以简化你的报告和合作过程到你现有的工作流程。你可以用PlexTrac的运行簿做更快的测试,并通过PlexTrac的分析和可视化功能向经理和领导层展示其影响。在几分钟内,你就可以完成你的渗透测试报告,都有你团队的标志和细节,然后发送给客户。花更多的时间进行渗透测试,减少报告时间。了解如何通过PlexTrac将你的团队效率提高30%并将报告时间减少65%。说真的,看看PlexTrac吧。我有很好的同事和同行每天都在使用PlexTrac进行报告。用我下面视频描述中的链接开始,让你和你的团队回到黑客领域。衷心感谢PlexTrac赞助这个视频。
但让我们在这里得到一些真正的烟火,让我们在另一台安装了另一款防病毒产品的虚拟机中使用这个。

它现在并未使用Windows Defender。它将最终使用这个杀毒软件,我们的hoaxshell有效载荷就会直接飞越雷达毫无问题地运行。所以,让我继续,在这里复制这个语法。

我将改变这个LOLBIN使用,像,再次,另一个SQL数据库连接器,或者是与query一词相适应的东西。所以在这一点上,我很想把这个交给你,供你自己探索或者也许是对读者或观察者的一个练习我不知道你是否能在混合中没有任何参数的情况下进行阶段性的布置,或者你是否可以用这样那样的方式提供这些参数。也许你可以从远程资源中下载这个,也许IWR,调用网络请求(invoke-webrequest),管道到IEX。你可以从文件系统中提取它。如果你想的话,你可以变得超级创造性。我猜C:\Windows\Tasks通常是一个全世界可写的文件夹。

我们可以调用这个服务并粘贴我们的 PowerShell 语法


只是为了在这里展示。让我把这个保存为真正的.bat扩展名,这样我们就可以运行。哦,我漏掉了一个反斜杠。这应该被纠正。好的,再次部署。

做好了。是的。覆盖。尝试运行。让我们检查一下hoaxshell。


做到了。做到了。它做到了。它终于做到了。

OK,现在我有我的反弹shell提示。好了然后我们有一个愚蠢的小防病毒软件,它没有检测到这个东西。小小的防病毒软件绕过。我们可以做任何我们想做的事。

当然,这只是一个伪造的反弹shell。你仍然可以想要做任何你可以恶意地使用任何技巧的事情,或者你仍然需要暂时担心你的防病毒软件。但如果我们能做一些私人SK,如果我们能把那东西关掉、如果我们可以禁用安全保护,那么我们就可以开展业务了。也许你可以把查询(query)命令隐藏在系统管理员脚本里面,看起来像,我不知道,它将与数据库一起工作。你可以让它伪装起来。你可以让它融合在一起。你可以建立持久性机制和某种二阶的东西在那里你仍然有一些俗气可爱的立足点,但你真正的引爆器被掩盖在这种“活在土地上”技术背后。我不知道你的情况。我觉得这有点酷。我希望你喜欢这样的东西。所有的功劳都归功于Ogtweet。他总是推出不可思议的东西。嘿,非常感谢你的观看。希望你能学到一些东西并且喜欢这个视频。如果你喜欢的话,请做所有这些YouTube算法事情,如评论,订阅。如果你愿意,如果你觉得超级超级慷慨,下面有Patreon的链接。如果你想成为频道的成员,那将非常有助于支持和发展频道,我,我不知道,能够深入做这样的事情。再次感谢大家。我将在下一个视频中看到你。