漏洞发现
操作系统之漏洞探针类型利用修复
工具使用
漏扫工具:Goby,Nmap,Nessus
namp --script=vuln 默认nse插件
nmap vulscan vulners调用第三方库探针
nessus安装-使用-插件库加载器
在提权过程中需要通过掌握的信息来对系统、软件等存在的漏洞进行搜索,获取其利用的poc,通过编译后,实施提权。searchsploit提供漏洞本地和在线查询,是渗透测试中提权的重要武器。
详解:https://www.jianshu.com/p/bd8213c53717
相关名词解释:
CVSS,CVE,EXP,POC等
->exp:利用
->poc:验证
https://blog.csdn.net/qq_38055050/article/details/80214684
漏洞发现-操作系统之漏洞探针类型利用修复
角色扮演:操作系统权限的获取会造成服务器上安全问题
漏扫工具:Goby,Nmap,Nessus,openvas,nexpose
漏洞类型:权限提升,缓冲区溢出,远程代码执行,未知bug
漏洞利用:工具框架继承类,漏洞公布平台修复类,复现文章参考
漏洞修复:打漏洞补丁,关闭对应入门点,加入防护软件
漏洞利用
一、Metasploit简介
Metasploit是当前信息安全与渗透测试领域最流行的术语,它完全颠覆了已有的渗透测试方式。几乎所有流行的操作系统都支持Metasploit,而且Metasploit框架在这些系统上的工作流程基本一样。本系列文章中的示例以Kali操作系统给为基础,该操作系统预装Metasploit及在其上运行的第三方工具。kali系统的下载地址为http://www.kali.org/downloads/。
Metasploit框架(Metasploit Framework,MSF)是一个开源工具,旨在方便渗透测试,它是由Ruby程序语言编写的模板化框架,具有很好的扩展性,便于渗透测试人员开发、使用定制的工具模板。
Metasploit可向后端模块提供多种用来控制测试的接口(如控制台。Web、CLI)。推荐使用控制台接口,通过控制台接口,你可以访问和使用所有Metasploit的插件,例如Payload、利用模块、Post模块等。Metasploit还有第三方程序的接口,例如Nmap、SQLMap等,可以直接在控制台接口里使用,要访问该界面,需要在命令行下输入mfsconsole,MSF的启动界面如图1所示。
图1 MSF启动界面
在使用Kali操作系统时应注意及时更新源,就像平时要及时更新手机App一个道理。更新命令有
apt-get update
、apt-get upgrade
和apt-get dist-upgrade
。
-
apt-get update
:只更新软件包的索引源,作用是同步源的软件包的索引信息,从而进行软件更新。 -
apt-get upgrade
:升级系统上安装的所有软件包,若更新失败,所涉及的包会保持更新之前的状态。 -
apt-get dist-upgrade
:升级整个Linux系统,例如从Kali Linux 1.0.1升级到Kali Linux 1.0.2(不仅能够升级所有已安装的软件包,而且会处理升级过程中可能出现的软件冲突。某些情况下,它的部分升级过程需要人工参与)。
二、Metasploit基础
2.1 专业术语
MSF框架由多个模块组成,各个模块及其具体功能如下。
- Auxiliaries(辅助模块)
该模块不会直接在测试者和目标主机之间建立访问,它们只会负责执行扫描、嗅探、指纹识别等相关功能以辅助渗透测试。
- Exploit(漏洞利用模块)
漏洞利用是指由渗透测试者利用一个系统、应用或者服务中的安全漏洞进行的攻击行为。流行的渗透攻击技术包括缓冲区溢出、Web应用程序攻击,以及利用配置错误等,其中包含攻击者或测试人员针对系统中的漏洞而设计的各种POC验证程序,用于破坏系统安全性的攻击代码,每个漏洞都有相应的攻击代码。
- Payload(攻击载荷模块)
攻击载荷是我们期望目标系统在被渗透攻击之后完成实际攻击功能的代码,成功渗透目标后,用于在目标系统上运行任意命令或者执行特定代码,在Metasploit框架中可以自由地选择、传送和植入。攻击载荷也可能是简单地在目标操作系统上执行一些命令,如添加用户账号等。
- Post(后期渗透模块)
该模块主要用于在取得目标系统远程控制权后,进行一系列的后渗透攻击动作,如获取敏感信息、实施跳板攻击等。
- Encoders(编码工具模块)
该模块在渗透测试中负责免杀,以防止被杀毒软件、防火墙、IDS及类似的安全软件按检测出来。
2.2 渗透攻击步骤
使用MSF渗透测试时,可以综合使用以上模块,对目标系统进行侦察并发动攻击,大致的步骤如下所示。
- 扫描目标机系统,寻找可用漏洞。
- 选择并配置一个漏洞利用模块。
- 选择并配置一个攻击载荷模块。
- 选择一个编码技术,用来绕过杀毒软件的查杀。
- 渗透攻击。
具体请看:MSF渗透使用说明这篇文章,渗透测试下目录里面
web应用bug发现
已知CMS
如常见的dedecms,discuz,wordpress等源码结构,这种一般采用非框架开发,但是也有少部分采用框架类开发,针对此类源码程序的安全监测,
我们要利用公开的漏洞进行测试,如不存在可采用白盒代码审计自行挖掘。
开发框架
如常见的thinkphp,spring,flask等开发的源码程序,这种源码程序正常的安全测试思路:先获取对应的开发框架信息(名字,版本),通过公开
的框架类安全问题进行测试,如不存在可采用白盒代码审计自行挖掘
未知CMS
如常见的企业和个人内部程序源码,也可以是某CMS二次开发的源码结构,针对此类的程序源码测试思路:能识别二次开发就按已知CMS思路进行,不
能确定二次开发的话可以采用常规综合类扫描工具或脚本进行探针,也可以采用人工探针(功能点,参数,盲猜),同样在有源码的情况下进行代码审计自行挖掘。
开发框架类源码渗透测试报告咨询-thinkphp,spring
thinkphp报错,,,spring框架,,,
已知CMS非框架类渗透测试报告-工具脚本-wordpress
识别wordpress,,,找到通杀漏洞。
已知CMS非框架类渗透测试报告-代码审计-qqyewu_php
seay源码审计系统,,,
未知CMS非框架类渗透测试报告-人工-外挂
外挂类网站
APP应用bug发现
思路说明
反编译提取URL或者获取URL,进行WEB应用测试,如不存在或走其他协议的情况下,需采用网络接口抓包进行数据获取,转至其他协议进行安全测试。
APP-> WEB APP->其他 APP->逆向
WEB抓包,其他协议转包进行演示
未逆向层面进行抓包区分各协议测试
逆向层进行提取APK代码层面数据
https://www.cnblogs.com/L0ading/p/12388928.html
抓包工具WEB协议面使用说明
被动扫描(抓包精灵)
抓包工具非WEB协议面使用说明
安卓逆向边界APK一键提取URL
API接口服务
接口服务类安全测试
根据前期信息收集针对目标端口服务类探针后进行的安全测试,主要涉及攻击方法:口令安全,WEB类漏洞,版本漏洞等,其中产生的危害可大可小,属于端口服务/第三方服务类安全测试。一般在已知应用无思路的情况下选用的安全测试方案。
API接口
webservice RESful APT
https://xz.aliyun.com/t/2412
根据应用自身的功能方向决定,安全测试目标需有API接口才能进行此类测试,主要涉及的安全问题,自身安全,配合WEB,业务逻辑等,其中产生的危害可大可小,属于应用API接口网络服务测试面,一般也是在存在接口的情况下的测试方案。
WSDL(网络服务描述语言,web service description language)是一门基于XML的语言,用于描述web service 以及如何进行访问
漏洞关键字
配合shodan,fofa,zoomye等
inurl:jws?wsdl
inurl:asmx?wsdl
inurl:aspx?wsdl
inurl:ascx?wsdl
inurl:ashx?wsdl
inurl:dll?wsdl
inurl:exe?wsdl
inurl:php?wsdl
- 总结:
- 1.系统漏洞发现主要借助于MSF,nmap等扫描工具;
- 2.web漏洞主要借助目前市面上已知的exp
- 3.app可以先将网址抓到,然后再做渗透
- 4.wsdl接口服务将链接丢到awvs里面跑
端口号 端口说明 攻击技巧
21/22/69 ftp/tftp:文件传输协议 爆破
嗅探
溢出;后门
22 ssh:远程连接 爆破
OpenSSH;28个退格
23 telnet:远程连接 爆破
嗅探
25 smtp:邮件服务 邮件伪造
53 DNS:域名系统 DNS区域传输
DNS劫持
DNS缓存投毒
DNS欺骗
深度利用:利用DNS隧道技术刺透防火墙
67/68 dhcp 劫持
欺骗
110 pop3 爆破
139 samba 爆破
未授权访问
远程代码执行
143 imap 爆破
161 snmp 爆破
389 ldap 注入攻击
未授权访问
512/513/514 linux r 直接使用rlogin
873 rsync 未授权访问
1080 socket 爆破:进行内网渗透
1352 lotus 爆破:弱口令
信息泄漏:源代码
1433 mssql 爆破:使用系统用户登录
注入攻击
1521 oracle 爆破:TNS
注入攻击
2049 nfs 配置不当
2181 zookeeper 未授权访问
3306 mysql 爆破
拒绝服务
注入
3389 rdp 爆破
Shift后门
4848 glassfish 爆破:控制台弱口令
认证绕过
5000 sybase/DB2 爆破
注入
5432 postgresql 缓冲区溢出
注入攻击
爆破:弱口令
5632 pcanywhere 拒绝服务
代码执行
5900 vnc 爆破:弱口令
认证绕过
6379 redis 未授权访问
爆破:弱口令
7001 weblogic Java反序列化
控制台弱口令
控制台部署webshell
80/443/8080 web 常见web攻击
控制台爆破
对应服务器版本漏洞
8069 zabbix 远程命令执行
9090 websphere控制台 爆破:控制台弱口令
Java反序列
9200/9300 elasticsearch 远程代码执行
11211 memcacache 未授权访问
27017 mongodb 爆破
未授权访问