zoukankan      html  css  js  c++  java
  • 我的渗透测试笔记(一)

    本文作者:i春秋签约作家——Mochazz

    0×00 前言

    某一天,Szrzvdny表哥在群里分享了基于ThinkPHP的cms后台getshell的姿势,然后实际中真碰到一个用jymusic cms搭建的网站,就测试了一波,后来没空提权,就问了我。那我就练练手,平常也没提权过。下面用本地环境模拟测试过程,因为实战忘记截图了,不想再搞一次,毕竟只是检测。

    0×01 UDF提权

    默认账号:admin密码admin登录后台(是的,就是弱口令)。登陆后,就插PHP一句话木马吧,至于原理什么的,我在之前的文章中已经浅浅的分析了下:基于ThinkPHP的2个cms后台getshell利用

    图片1.png

    插完一句话,看一下有没成功

    图片2.png

    可以成功执行,那我们就上菜刀

    图片3.png

    打开菜刀虚拟终端,执行命令看看,下面是本地执行命令的结果。实际上,那个网站上装了防护软件,由于我们权限不够,不管执行什么命令,都不会返回命令执行结果

    图片4.png

    是时候上传UDF大马了

    图片5.png

    浏览器访问我们的udf大马

    图片6.png

    导出dll文件即可执行提权,执行命令也会有回显

    图片7.png

    现在来查看一下远程桌面的端口是哪个,有时候管理员会修改默认的3389端口,可以使用一下命令进行确定远程桌面服务的端口

    使用tasklist /svc | findstr TermService查看远程桌面程序的PID

    使用netstat -nao | findstr 1396查看远程桌面程序运行的端口号

    图片10.png

    由于我比较懒,不想直接添加远程登录账号,而且我又有administrator用户权限,干脆直接留后门好了,使用以下命令直接替换粘滞键程序:copy C:\WINDOWS\system32\cmd.exe C:\WINDOWS\system32\sethc.exe /Y 如果你对这个不熟悉,可以看我以前写的文章:一次渗透实战记录

    远程连接该主机,按5下shift键直接调用后门cmd程序,可以看到权限为system

    图片12.png

    接下来不需要添加账户,直接使用远程桌面会话劫持技术

    图片13.png

    0x 02 general_log获取webshell

    上面其实已经完成了整个渗透过程,但是在交流的过程中,发现还可以通过修改利用mysql的genera配置文件来实现获取webshell,这里做个记录。

    图片14.png

    最后查看是否写入成功,是否可用

     

    具体分析可以参考这篇文章:Mysql root账号general_log_file方法获取webshell

    0×03 遇到的问题

    在自己搭建的环境中,发现那个dll文件无法导出

    原因及解决方法如下

    图片18.png

    0x 04总结

    每次学习,我都会做一次总结,由于实战经验不足,导致每次好多东西要边Google边操作,还是是要多练练。最后,附上Szrzvdny表哥的blog地址:http://www.inksec.cn/,我的博客就不附上了。

    图片17.png

  • 相关阅读:
    JAVA基础学习之路(九)[2]String类常用方法
    [MYSQL]练习(一)
    JAVA基础学习之路(十一)引用传递
    java--多线程编程简介
    序列化和反序列化的理解
    简单的socket编程
    php-生成数据库设计文档
    centos7 jenkins安装和使用
    centos7 rabbitmq安装以及应用
    centos7 dubbokeeper安装
  • 原文地址:https://www.cnblogs.com/ichunqiu/p/7602515.html
Copyright © 2011-2022 走看看