首页 > 其他分享 >csrf与xss差别 别在弄乱了 直接靶场实操pikachu的csrf题

csrf与xss差别 别在弄乱了 直接靶场实操pikachu的csrf题

时间:2024-06-09 23:04:03浏览次数:19  
标签:xss 登录 pikachu 用户 token csrf 小白

我们现在来说说这2个之间的关系,因为昨天的我也没有弄清楚这2者的关系,总感觉迷迷糊糊的。

xss这个漏洞是大家并不怎么陌生,导致xss漏洞的产生是服务器没有对用户提交数据过滤不严格,导致浏览器把用户输入的当作js代码返回客户端进行执行,这样就导致了攻击。

xss(跨站脚本攻击)可以说简单一点前端js代码可以干什么我们就可以干什么,我们可以获取到用户的cookie,获取键盘记录,钓鱼等等的操作

我们来说说csrf这个漏洞
csrf(跨站请求伪造)这个是利用用户的cookie来进行恶意的操作,我们举一个例子

小白有错????

小白在登录了网上某银行的网站,准备进行给女朋友小红进行转账,这个银行的接口存在csrf这个漏洞,在小白转账的时候,我(hack)给小白发了一个钓鱼邮件,小白看见邮件有美女图片就点击进去看看,然后在点击的时候,我就通过这个漏洞用银行转账系统给我自己转了88888元。当小白看完了美女图片过后,重新回去给女朋友转钱,一付款就提示余额不足,把小白给急到了。为此,小红还要跟小白分手。我们小白有什么错???不就是看看其他的网站吗???

其实通过上面的这个故事,就知道了,hack并没有拿到(明文)cookie,但是为什么就能当做正常的用户进行操作,这就是csrf了,它与xss不同的事,csrf不能获取到cookie,但是通过xss漏洞可以获取到对方的cookie信息。我在上面的故事中在小白访问的时候就加了一段js代码,当小白点进去过后,主页加载的是图片,但是恶意代码我在宽度和长度进行了隐藏,所以点击就给我的账号进行转钱的操作。这个可以通过bp帮你生成payload。 我后面在跟大家说怎么生成payload。

 csrf能进行伪造成正常用户进行登录,但是它的实现非常的严格,你要知道它在当前登录了哪些网站,是存在的crsf,而且当时它点击你的链接或者其他的图片的时候,它要是登录的状态。你要知道它是谷歌还是eg还是火狐来进行访问的,这些等等的操作。是不是感觉比较的严格

下面的这个是pikachu的post的payload

<html>
  <!-- CSRF PoC - generated by Burp Suite Professional -->
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="http://192.168.163.130/pikachu-master/vul/csrf/csrfget/csrf_get_login.php">
      <input type="hidden" name="username" value="lili" />
      <input type="hidden" name="password" value="123456" />
      <input type="hidden" name="submit" value="Login" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

在正常用户小白的眼里是正常的,就访问了一个图片是正常的操作,自己也没有输出账号和密码,为什么就被攻击了呢??也就是自己登录了那个网上转账的cookie然后在没有退出登录的时候,访问了攻击者构造的网站,就被莫名其妙的攻击了。

我们来看看pikachu的靶场,怎么进行伪造的,我们先看正常的用户:

进行登录操作:

进行抓包处理

生成你的payload,然后我们在对方的同样的浏览器进行访问操作

用户这边是登录进去了的,然后我们去攻击者那边得到的payload看是怎么实现

点击登录的框就以及冒充用户登录了它的账号了。

这个时候我们想干什么就干什么,如果是xss的话还可以这样:

我们可以获取它的键盘信息,如果用户输出的有自己的支付密码或者登录密码账号等等,都是可以获取到的。

get方式也可以使用bp工具帮你获取,其实还有一个自动化的工具可以帮你找到这点是不是存在csrf的漏洞,但是我还没有运行起,我弄好了会发出来的。

 

防御方法:

http中的referer字段可以知道是从哪进行请求的(可以进行绕过)

加入验证码或者token

token是这样的验证的,用户登录过后,服务器会自己存token值在session中然后客户端的token在隐藏的字符中(这个说不定在哪)

然后用户进行访问的时候会带着token来进行访问,如果token与服务器存放的不一样,那么就帮你进行访问,用户退出,session没了,然后token也没了。

标签:xss,登录,pikachu,用户,token,csrf,小白
From: https://blog.csdn.net/helloKittywz/article/details/139566569

相关文章

  • 记录自己在xss-labs的通关记录
    第十一关(referer)直接查看网页源代码,发现四个input被隐藏,不难看出,第四个名为t_ref的<input>标签是http头referer的参数(就是由啥地址转跳到这里的,http头的referer会记录有)通过构造payload,配合burpsuite抓包可以得到?keyword=&t_link"type='text'>//&t_history"type='text'>......
  • DOM型xss靶场实验
    DOM型xss可以使用js去控制标签中的内容。我使用的是一个在线的dom型xss平台,靶场链接:Challenges第一关MaSpaghet!:MaSpaghet!关卡<h2id="spaghet"></h2><script>spaghet.innerHTML=(newURL(location).searchParams.get('somebody')||"Somebody&qu......
  • 记录自己在xss-labs靶场的通关记录
    一:靶场下载及搭建xss-labs下载地址:xss-labs:xss跨站漏洞平台-GitCodephpstudy集成开发环境安装:[靶场环境篇]phpstudy集成环境安装教程(特别详细)_phpstudy集成环境-CSDN博客我们下载完之后,就可以进行xss-labs-master的搭建,我本人下载的phpstudy是2018年版的将xss-......
  • pikachu靶场(File Inclusion(文件包含)通关教程)
    1.FileInclusion(local)本地文件包含1.1打开网站,发现有个下拉框,随便选择一个,然后点击提交1.2发现图中有个参数变了,其他的也会变,猜测这里可能有其他隐藏的文件1.3直接进行抓包 ,右键发送到爆破模块1.4 选择爆破方式为sniper,选择爆破点 1.5设置攻击字典,选择数字,从1......
  • XSS攻击原理及危害,说的太详细了!(值得收藏)
    随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,在移动互联网时代,web除了传统的XSS、CSRF等安全问题之外,又时常遭遇网络劫持、非法调用HybridAPI等新型安全问题。当然,浏览器自身也在不断在进化和发展,不断引入CSP、Same-SiteCookies等新技术来增强安全......
  • DVWA靶场---csrf遇到的问题解决方法
    1.解决low等级不携带cookie访问诈骗网站:设置---隐私与安全---浏览器隐私---增强型跟踪保护---自定义---cookie---跨站跟踪型cookie。2.解决medium等级referer显示不完整解决方法:在服务器的html上加一段:<metaname="referrer"content="no-referrer-when-downgrade">当从......
  • Spring (33)CSRF(跨站请求伪造)保护
    跨站请求伪造(CSRF)是一种常见的网络攻击手段,它允许攻击者在不知情的用户浏览器中发起恶意请求。这种攻击利用了网站对用户浏览器的信任。如果用户在浏览器中已经登录了一个网站,攻击者就可以构造一个请求,这个请求能够利用用户的登录状态在该网站上执行未授权的操作。CSRF保护......
  • 众测项目实战--有趣的xss漏洞
    这是一个挺有意思的xss漏洞,正常情况下,一个邮件存在xss漏洞,就可以发给其他普通用户,危害一般也就只能截止到去攻击普通用户,但是这个案例的邮件就很有意思了。打开网站,发现是一个经典的商城界面,这种网站,需要先去注册,注册之后,才能去测试各种功能和各种漏洞。注册后,直接进入个人......
  • web安全 CSRF篇
    一、CSRF是什么?CSRF,全称跨站请求伪造(Cross-SiteRequestForgery),也被称为XSRF、SeaSurf或SessionRiding。它是一个网络安全漏洞,允许攻击者诱使用户执行他们不打算执行的操作。简单来说,就是攻击者欺骗用户的浏览器去执行一些非用户本意的操作。 二、CSRF的攻击原理用户C......
  • 存储型XSS
    前言什么是存储型xss:提交恶意xss数据,存入数据库中,访问时触发。存储型xss和反射型xss区别:存储型存入数据库中,可持续时间长,而反射型持续时间短,仅对本次访问有影响,反射型一般要配合社工。存储型xss操作过程:嵌入到了web页面的恶意代码被存储到服务器上,例如你注册时候将用......