首页 > 其他分享 >XSS与CSRF

XSS与CSRF

时间:2024-04-28 11:57:40浏览次数:24  
标签:XSS 受害者 请求 CSRF 攻击者 com

1.XSS

XSS,跨站脚本攻击,允许攻击者将恶意代码植入到提供给其它用户使用的页面中

XSS预防

1.过滤

在用户输入的过程中,过滤掉用户输入的恶劣代码,然后提交给后端,但是如果攻击者绕开前端请求,直接构造请求就不能预防了

2.不用执行恶意代码

在使用 .innerHTML.outerHTMLdocument.write() 时要特别小心,不要把不可信的数据作为 HTML 插到页面上,而应尽量使用 .textContent.setAttribute() 等

如果用 Vue/React 技术栈,并且不使用 v-html/dangerouslySetInnerHTML 功能,就在前端 render 阶段避免 innerHTMLouterHTML 的 XSS 隐患

DOM 中的内联事件监听器,如 locationonclickonerroronloadonmouseover 等,<a> 标签的 href 属性,JavaScript 的 eval()setTimeout()setInterval() 等,都能把字符串作为代码运行。如果不可信的数据拼接到字符串中传递给这些 API,很容易产生安全隐患,请务必避免

 

2.CSRF

CSRF(Cross-site request forgery)跨站请求伪造:攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求

利用受害者在被攻击网站已经获取的注册凭证,绕过后台的用户验证,达到冒充用户对被攻击的网站执行某项操作的目

一个典型的CSRF攻击有着如下的流程:

  • 受害者登录a.com,并保留了登录凭证(Cookie)
  • 攻击者引诱受害者访问了b.com
  • b.com 向 a.com 发送了一个请求:a.com/act=xx。浏览器会默认携带a.com的Cookie
  • a.com接收到请求后,对请求进行验证,并确认是受害者的凭证,误以为是受害者自己发送的请求
  • a.com以受害者的名义执行了act=xx
  • 攻击完成,攻击者在受害者不知情的情况下,冒充受害者,让a.com执行了自己定义的操作

csrf可以通过get请求,即通过访问img/a的页面后,浏览器自动访问目标地址,发送请求

 

CSRF预防

Token验证、同源检测

当用户从客户端得到了Token,再次提交给服务器的时候,服务器需要判断Token的有效性

 

标签:XSS,受害者,请求,CSRF,攻击者,com
From: https://www.cnblogs.com/ssszjh/p/18163408

相关文章

  • XSS漏洞靶场
    XSS漏洞靶场level1查看网站源码,发现get传参name的值test插入到了html头里面,还回显payload长度插入js代码,get传参?name=<script>alert()</script>本关小结:JS弹窗函数alert()level2貌似不对,查看下源码闭合掉双引号"><script>alert()</script><"本关小结:闭合绕过......
  • 如何使用XSSFWorkbook读取文本薄?
    【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18146625出自【进步*于辰的博客】1、文件兼容类型。//兼容文件后缀列表privatestaticfinalStringFILE_TYPE;static{FILE_TYPE=".xls/.xlsx/.csv";}2、文......
  • java使用Workbook workbook = new XSSFWorkbook(inputStream);导出数据频繁GC
    由于xlsx底层使用xml存储,占用内存会比较大,官方也意识到这个问题,在3.8版本之后,提供了SXSSFWorkbook来优化写性能原来代码Workbookworkbook= newXSSFWorkbook(inputStream);优化后代码Workbookworkbook= newSXSSFWorkbook(newXSSFWorkbook(inputStream));此处有坑,请往......
  • java代码审计跨站脚本(XSS)--反射型
    一、基础:跨站脚本(Xss)一、原理:恶意攻击者往web页面里插入恶意js代码,而在服务端没有对数据进行严格的过滤。当用户浏览页面时,js代码必须在该html页面中(hrml必须要存在这个而已艾玛),从而达到攻击用户的目的。(攻击者构造的的js代码会被当作正常的HTML、JS代码被解析,执行Js脚本实现攻......
  • 【Xss-fiddler漏洞测试】通过该种方式 可以批量扫描也可以使用super xary 进行图形扫
    下载xary-社区版生成xary证书xxxgencaChrome安装证书-设置-隐私安全-安全-管理证书-导入 Chrome安装代理 Fiddler设置转向代理 命令行启动xary 启动xary,启动被测试网站-一边操作一边查看--触发后的命中效果    ......
  • 在Linux中,如何检测和防止SQL注入和跨站脚本(XSS)攻击?
    在Linux环境中运行的Web服务器和应用程序可能面临SQL注入和跨站脚本(XSS)攻击的风险。以下是在Linux中检测和防止这两种常见攻击的方法:1.SQL注入攻击的检测与防止:1.检测:审计日志分析:通过分析数据库和Web服务器日志,查找异常的SQL查询模式或错误消息,这些可能是SQL注入攻击的......
  • xss.pwnfunction-Mafia
     这个是利用的构造函数用source来获取构造函数的源码并转化成小写Function(/ALERT(1337)/.source.toLowerCase())()或parseInt(string,radix)string:要被解析的字符串。radix:解析时使用的基数(进制)。可选参数,默认为10。用parseint将alert转成进制这里为什么用30因为在......
  • 【24.0】Django框架之csrf跨站请求
    【一】跨站请求伪造介绍【1】引入CSRF(Cross-SiteRequestForgery)跨站请求伪造是一种常见的网络攻击方式。攻击者通过诱导受害者访问恶意网站或点击恶意链接将恶意请求发送到目标网站上利用受害者在目标网站中已登录的身份来执行某些操作从而达到攻击的目的。【2】举......
  • 关于CSRF跨站请求伪造的理解(只写了一点点,未写完)
    之前做一道题时遇到了这样一句CSRF(Cross—SiteRequestForgery)跨站请求伪造的预防措施:1、使用token2、加验证码3、http请求头设置referer字段有点不太理解什么时候请求头设置了referer字段发现是这种浏览器开发者页面看到的请求头里的ReferrerPolicy。这个的含义,用AI生成......
  • CSRF - 跨站请求伪造
    目录1、什么是CSRF2、CSRF的攻击过程和原理3、CSRF的类型有哪些4、CSRF的防御5、CSRF与XSS有何不同6、没有防御的CSRF1、什么是CSRF跨站请求伪造(Cross-siterequestforgery),CSRF是指利用受害者尚未失效的身份认证信息(登录状态中的Cookie等),诱骗受害者点击恶意链接,或者访问包含攻......