HW知识学习
师傅好
我是xxx,今天面试蓝初,我主要掌握一些 Top 10漏洞 了解一些流量特征
之前有过一次护网经历
主要是 进行一些 告警信息处理
在之前的护网期间,有一次我们的服务器遭到了攻击,我们立即展开应急响应工作,我们首先做的是向攻击者的IP范围加入防火墙,限制恶意流量进入服务器,当时我们的服务器已经接收到了一部分恶意流量,我们当时选择了丢弃,因为我们不能让其影响服务器的带宽和处理能力,然后我们在服务器上查看进程信息,发现恶意进程后,我们也是第一时间关闭了恶意进程,我们也删除了攻击者留下的恶意文件,因为攻击者是利用我们服务器的一些安全漏洞从而攻击我们的服务器,所以我们也是给服务器做了安全修复并且也打了补丁,最后我们维护日志文件并进行调查,在确定了攻击方式、攻击目的和攻击来源后,向研判进行汇报。
非关键业务,先隔离网络,通过请求路径查找相关的webshell文件,通过webshell文件排查相关日志,最后修补漏洞
在排查⼀台服务器被攻击后,需要采取快速⽽有针对性的措施,并结合具体情况进⾏分析和修复,以保护系统和敏感数据的安全性。
OWASP TOP 10漏洞
注入漏洞(Injection)
- 原理:攻击者向应用程序中输入恶意代码,使其执行未经授权的操作。
- 攻击方式:SQL注入、LDAP注入、OS命令注入等。
- 防御方法:使用参数化查询、输入校验和白名单、最小化权限等。
鉴权漏洞(Authentication and Authorization)
- 原理:攻击者绕过或破解应用程序的身份验证和授权机制,以获取未经授权的访问权限。
- 攻击方式:密码猜测、会话劫持、CSRF等。
- 防御方法:强密码策略、多因素身份验证、会话管理、访问控制等。
垂直越权漏洞(Sensitive Data Exposure)
- 原理:应用程序在未加密或未正确加密的情况下存储和传输敏感信息。
- 攻击方式:网络嗅探、数据泄露等。
- 防御方法:加密、数据保护、强密码策略等。
XML外部实体漏洞(XML External Entities (XXE))
- 原理:应用程序解析XML时,未正确处理外部实体,导致攻击者可以访问系统文件、执行命令等。
- 攻击方式:XXE攻击等。
- 防御方法:禁用外部实体、使用最新版本的XML解析器、输入校验等。
未授权漏洞(Broken Access Control)
- 原理:应用程序未正确实现访问控制机制,导致攻击者能够访问未授权的资源。
- 攻击方式:直接访问、暴力破解等。
- 防御方法:访问控制、安全编码、安全测试等。
安全配置错误漏洞(Security Misconfiguration)
- 原理:应用程序或其环境未正确配置,导致攻击者可以访问敏感信息、执行未经授权的操作等。
- 攻击方式:目录遍历、错误页面泄露等。
- 防御方法:安全配置、代码审计、最小化权限等。
跨站脚本攻击漏洞(Cross-Site Scripting (XSS))
- 原理:攻击者向应用程序中输入恶意脚本,使其在用户的浏览器中执行。
- 攻击方式:反射型XSS、存储型XSS等。 防御方法:输入校验、输出编码、HTTPOnly标记等。
反序列化漏洞(Insecure Deserialization)
原理:应用程序在反序列化数据时未正确验证其完整性和有效性,导致攻击者可以执行未经授权的代码。
攻击方式:注入恶意对象等。 防御方法:输入验证、使用最新版本的序列化器、最小化权限等。
使用含有已知漏洞的组件(Using Components with Known Vulnerabilities)
原理:应用程序使用已知存在漏洞的第三方组件,导致攻击者可以利用这些漏洞攻击应用程序。
攻击方式:利用已知漏洞等。 防御方法:使用最新版本的组件、实时跟踪漏洞等。
不足的日志记录与监控(Insufficient Logging & Monitoring)
原理:应用程序未正确记录或监控其活动,导致攻击者可以执行未经授权的操作而不被检测。
攻击方式:暴力破解、DDoS攻击等。 防御方法:安全审计、日志监控、入侵检测等。
SSRF
SSRF原理?
服务端提供了能够从其他服务器应用获取数据的功能,我们服务端请求的目标都是与该请求服务器处于同一内网的资源服务,但是如果没有对这个请求的目标地址、文件等做充足的过滤和限制,攻击者可通过篡改这个请求的目标地址来进行伪造请求,进行未授权访问。
SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。
SSRF常用的协议
file 用于读取文件
dict 用于探测一些端口 以及数据库信息
LDAP 目录扫描
TFTP 它允许客户端从远程主机获取文件或将文件上传至远程主机 上传shell
Sftp 网络传输文件
gopher 在网络上获取文本信息的早期的互联网协议,http协议前身
Http 超文本传输协议
XSS
XSS(**跨站脚本攻击**)的原理和类型
攻击者在Web页面中注入恶意的Script代码,当用户浏览该网页时,嵌入的Script代码会被执行,从而达到攻击的目的。
XSS类型:
- 反射型XSS 不会被服务端造成影响
1 | <script>alert(111)</script> |
- 存储型XSS 查后端存储的数据
1 | <scriptalert(document.cookie)</script |
- DOM型XSS 取出和执行恶意代码由浏览器端完成,属于前端 JavaScript 自身的安全漏洞,而其
XSS的绕过方法?
大小写转换;
引号的使用;
使用 / 代替空格;
编码绕过(将字符进行十进制或者十六进制转码);
5.双写绕过;
6.使用制表符 换行符和回车符
7.使用 IMG 源
XSS的利用方式(危害)
窃取cookie
抓取屏幕截图
获取键盘记录
重定向
植入广告,恶意链接
网页钓鱼
网页挂马
结合网页挂马或者其他工具(Metasploit)获取服务器或者操作系统权限
XSS的防范措施
对用户的输入进行过滤
比如说添加黑名单或者白名单规则,比如说对& “ ‘ / expression javascript import等敏感字符进行转义
使用 HttpOnly Cookie
如果cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击,窃取cookie内容,这样可以有效的防止XSS攻击窃取cookie。
response.addHeader(“Set-Cookie”, “uid=112; Path=/; HttpOnly”);
设置X-XSS-Protection属性
该属性被所有的主流浏览器默认开启。X-XSS-Protection,即XSS保护属性,是设置在响应头中目的是用来防范XSS攻击的。在检查到XSS攻击时,停止渲染页面。
header(“X-XSS-Protection: 1”);
开启CSP网页安全策略
CSP是网页安全策略(Content Security Policy)的缩写。开启策略后 可以起到以下作用
禁止加载外域代码,防止复杂的攻击逻辑。
禁止外域提交,网站被攻击后,用户的数据不会泄露到外域。
禁止内联脚本执行(规则较严格,目前发现 GitHub 使用)。
禁止未授权的脚本执行(新特性,Google Map 移动版在使用)。
合理使用上报可以及时发现 XSS,利于尽快修复问题。
避免内联事件
尽量不要使用 onLoad=“onload(’’)”、onClick=“go(’’)” 这种拼接内联事件的写法。在 JavaScript 中通过 .addEventlistener() 事件绑定会更安全。
使用模板引擎
开启模板引擎自带的 HTML 转义功能。例如: 在 ejs 中,尽量使用 而不是 ; 在 doT.js 中,尽量使用