渗透测试面试基础知识
作者:互联网
一,SQL注入的原理和防御机制
原理:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,达到欺骗服务器执行恶意的SQL命令
防御机制:1.对用户输入的数据类型做严格限制
2.使用预编译绑定变量的SQL语句
3.过滤特殊字符
4.数据库信息加密,使用数据库防火墙,web防火墙
二,XSS注入的原理和防御机制
原理:恶意攻击者往Web页面里插入恶意javaScript代码,当用户浏览该页之时,嵌入其中Web里面的javaScript代码会被执行,从而达到恶意攻击用户的目的。
XSS与CSRF的区别:
XSS
是获取信息,不需要提前知道其他用户页面的代码和数据包。CSRF
是代替用户完成指定的动作,需要知道其他用户页面的代码和数据包。
要完成一次CSRF攻击,受害者必须依次完成两个步骤:
1.登录受信任网站A,并在本地生成Cookie。 2.在不登出A的情况下,访问危险网站B。
防御机制:编码,过滤,校正,内容安全策略(CSP)
三,CSRF防御机制:
1.Token验证
2.check Referer
3.验证码
4.使用post请求方式
四.SSRF
原理:服务器端所提供的接口中包含了所要请求的内容的URL参数,并且未对客户端所传输过来的URL参数进行过滤。
防御机制:1.设置url白名单或者限制内网ip
2.限制协议未HTTPS,HTTP
3.不用302重定向
4.限制请求的端口为http常用的端口
5.过滤返回信息,统一错误信息
五,sqlmap常用的注入方法:
post:-r,data
绕过防火墙的方法:
1.-random-agent #使用任意浏览器进行绕过,尤其是在WAF配置不当的时候
2.--hpp 参数污染进行绕过,尤其是在ASP.NET/IIS 平台上
3.--delay=3.5 --time-sec=60 #使用长的延时来避免触发WAF的机制,这方式比较耗时
4.--proxy 使用代理注入
5.--tor # 匿名注入
6.--tamper 编码脚本
risk:越高风险越高,功能会篡改数据库内容,增加危险的sql注入语句
level:不仅仅是增加sql注入payload,还会加大注入面,更加全面的扫描
标签:渗透,页面,用户,防御机制,面试,CSRF,SQL,基础知识,注入 来源: https://www.cnblogs.com/SCHAOGES/p/10999678.html