WEB任务:
1.目前owasp的十大web安全漏洞是哪些?这些漏洞排名是按照漏洞的严重程度排序的还是按照漏洞的常见程度排序的?(2分)
- injection(Sql,Command)
- Broken Authentication
- Sensitive Data Exposure
- Xml External Entities(XXE)
- Broken Access Control
- Security Misconfiguration
- Cross-Site Scripting (xss)
- Insecure Deserialization
- Using Components with Known Vulnerabilities
- Insufficient Logging and Monitoring
排序方式:
漏洞的常见程度
2.请翻译一下credential stuffing(1分)
证书填充,恶意软件劫持路由器,将其转变为SOCKS代理,然后开展”Credential stuffing(证书填充攻击)”,由于证书填充攻击会不断去验证被盗密码的有效性,因此攻击双方在自动化程度上与暴力破解攻击很类似
credential stuffing 撞库攻击
3.为什么说不充分的日志记录(insufficient logging)也算owasp十大漏洞的一种?他的危害性如何(2分)
没有执行日志记录和监控的服务器,无法充分记录遭受的攻击,他们无法识别这是恶意还是善意的,就会导致严重的攻击后果。同时,在渗透测试的时候也要注意进行的时候,查看日志是否会记录,以便客户随时监视自己的应用程序
4.请翻阅一下owasp testing guide,以及owasp testing guide check-list,视频说怎么结合这两个文档来学习渗透测试? 结合你平时渗透过程中的经验,谈谈你的感想。(3分)
owasp testing guide 测试指南
owasp testing guide check-list 测试清单
根据清单上的类别,在测试指南中寻找测试方法。
渗透测试要进行的没有纰漏,可以按照清单的内容进行,并且同时可以在测试指南中查找测试方式
5.you are only as good as you notes .you are only as good as things you can refer to 结合这两句话谈谈你的感想。(2分)
翻译:
你的笔记有多好,你就有多优秀
你参考的东西有多好,你就有多优秀
强调了两点:
- 做笔记的重要性
- 参考资料的重要性
学的快忘的更快,但是在我们学习的时候及时做出笔记,及时忘的很快,我们也可以用很少的时间,重温学过的知识,笔记做的越好,那么说明你掌握的知识就越透彻,那么你就越优秀。
你参考的东西是你知识的来源,你参考的多少,你就能学到多少,参考的资料有多深,你就能学到多深,那么努力去扩大自己参考资料范围吧,那是你能学到的极限!
1.http报文的结构是什么?(1分)
起始行:
在请求报文中用来说明说明做什么,在响应报文用来说明出现了什么情况
首部
每个首部字段包含一个名字和一个值,为了便于解析,两者之间用冒号隔开,首部以空行结束
主体字段:
空行之后就是豹报文主体,其中包含了所有类型的数据,请求主题中包含了发送给服务器的数据,主体可以包含任意二进制数据。
2.什么是crlf?在http报文的哪个位置。(1分)
换行,首部和主体字段之间
3.解释下这几个头的含义(5分):
HOST:指示处理请求的目标主机
Accept: 指示接受哪些mime类型(由客户端(json和xml的输出)指定输出的实例)
MIME 类型是一种文本标记,表示一种主要的对象类型和一个特定的子类型,中间由一条斜杠来分隔。
• HTML 格式的文本文档由 text/html 类型来标记。
•普通的 ASCII 文本文档由 text/plain 类型来标记。
• JPEG 格式的图片为 image/jpeg 类型。
• GIF 格式的图片为 image/gif 类型。
• Apple 的 QuickTime 电影为 video/quicktime 类型。
•微软的 PowerPoint 演示文件为 application/vnd.ms-powerpoint 类型。
Cookie:标志用户信息的少量数据,用于服务器识别用户,储存在用户机器上
refer:表示请求的来源,可以进行基本的身份验证
Authorization:Authorization header的典型数据为”Authorization: Basic jdhaHY0=”,其中Basic表示基础认证, jdhaHY0=是base64编码的”user:passwd”字符串
一次典型的访问场景是:
浏览器发送http请求(没有Authorization header)
服务器端返回401页面
浏览器弹出认证对话框
用户输入帐号密码,并点确认
浏览器再次发出http请求(带着Authorization header)
服务器端认证通过,并返回页面
浏览器显示页面
4.cookie具有哪些特点,不同的域名和子域名对cookie有怎样的权限?Cookie的Secure和 HTTPOnly这两个flag分别有什么作用?请结合xss攻击来进行说明(3分)
cookie:存储一些少量数据信息,在本地保留一段固定时间,随着每个请求发送
每个cookie的作用域有实际与他匹配的域,他会被发送到任何具有安全隐患的子域中
子域名可以在父域名以及他的子域名设置cookie,但无法在同级域名之间设置cookie
设置security:那么coookie仅仅在https页面之间传输
httponly;确保仅通过网络请求发送cookie, 不允许从javascript中读取cookie
5.简述本视频提到的xss绕过web防火墙的方案(5分)
脚本表现本身会被浏览器自动关闭,,页面中可能会出现一些错误的语法,但是如果自动关闭,如果我们拥有了页面的脚本,我们可以将htmml添加到页面中
缺少右尖括号,由下一个标签自动关闭,这将结束很多属性,这在大多数情况很有效
6.内容嗅探是什么?主要有哪些类型?请分别举例,主要用途是什么?在什么情况下可以利用这些漏洞?。为什么facebook等网站需要使用不同的域名来存储图片?(5分)
内容嗅探:
在不发送内容的情况下将数据发送到浏览器的地方
嗅探类型:
mime类型:
更改mime类型包含一些html,获得跨站点脚本
编码嗅探:
网页上有个众不同的类型内容,如果一个网页看到一个字符发现他没有意义,那么就会尝试去编码他,通过控制浏览器编码,更改解析,并且绕过过滤器
上传图片时如果包含足以引发攻击者嗅探的html可以上传包含很多的HTML的图片,之后执行 操作
7.同源策略是什么?限制是什么?浏览器在遇到哪两种情况的时候会用到同源策略?如何放松SOP限制?放松SOP限制会对浏览器插件安全造成怎样的破坏?
所谓同源是指,域名,协议,端口相同。
当一个浏览器的两个tab页中分别打开来 百度和谷歌的页面当浏览器的百度tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的,即检查是否同源,只有和百度同源的脚本才会被执行。
如果非同源,那么在请求数据时,浏览器会在控制台中报一个异常,提示拒绝访问。
限制:
- cookie不能读取
- dom无法获得
- ajax请求不能发送
放宽sop限制:
更改document.domain,是我们能够决定更改哪个子域
破坏沙箱,容易收到跨站脚本攻击
8.csrf是什么?如何设计规避csrf?视频中提到的错误的csrf配置方法是什么?
crsf:跨站请求伪造
规避方法:
让服务器知道请求的源头是在页面上还是在其他地方,sea surf
即生成随机的token,将其绑定到用户的会话,然后将其嵌入到发送的每一个表单,
错误配置:
放弃使用c surf token
附加题:5、6两点主要利用的是由于服务端和客户端对同一信息的处理方式不同造成的漏洞,你还能举出相似的例子么?(1分)
ssrf