Pikachu(一)

news2024/11/25 13:38:46

暴力破解

Burte Force(暴力破解)概述

“暴力破解”是一攻击手段,在web攻击中,一般会使用这种手段对应用系统的认证信息进行获取。 其过程就是使用大量的认证信息在认证接口进行尝试登录,直到得到正确的结果。 为了提高效率,暴力破解一般会使用带有字典的工具来进行自动化操作。

理论上来说,大多数系统都是可以被暴力破解的,只要攻击者有足够强大的计算能力和时间,所以断定一个系统是否存在暴力破解漏洞,其条件也不是绝对的。 我们说一个web应用系统存在暴力破解漏洞,一般是指该web应用系统没有采用或者采用了比较弱的认证安全策略,导致其被暴力破解的“可能性”变的比较高。 这里的认证安全策略, 包括:

1.是否要求用户设置复杂的密码;
2.是否每次认证都使用安全的验证码(想想你买火车票时输的验证码~)或者手机otp;
3.是否对尝试登录的行为进行判断和限制(如:连续5次错误登录,进行账号锁定或IP地址锁定等);
4.是否采用了双因素认证;
...等等。
千万不要小看暴力破解漏洞,往往这种简单粗暴的攻击方式带来的效果是超出预期的!

你可以通过“BurteForce”对应的测试栏目,来进一步的了解该漏洞。

从来没有哪个时代的黑客像今天一样热衷于猜解密码 ---奥斯特洛夫斯基

基于表单的暴力破解

使用burp抓包

右键,发送至Intruder模块

Attack type:选择Cilster bomb 

将用户名和密码Add为变量

payload 1:加载用户名字典   #字典可自行搜索下载

也可以Add手动添加

payload 2:加载密码字典

点击start attack

最后根据长度,得出账号密码

验证码绕过(on server)

填写表单及正确的验证码后提交并抓包,将数据包发送到Repeater模块,多次发包发现只提示username or password is not exists,而不提示验证码出错,得知验证码可以重复利用。因此只需要手动填写正确的验证码即可爆破

手动填写一次表单,需要输入正确的验证码,账号密码可任意

用户名和密码爆破,参考:基于表单的暴力破解

验证码绕过(on client)

输入正确的验证码,用户名和密码任意,抓包

可以看到验证码为空,回显提示用户名或密码不存在,证明验证码只在本地校验

下一步直接爆破用户名和密码。具体步骤参考:基于表单的暴力破解

token防爆破

Token在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思。一般作为邀请、登录系统使用。  --百度

输入用户名和任意密码,burp抓包

将请求发送至Intruder,
Attack type:设置为Cluster bomb

把password和token设置为变量

点击options找到Grep-Extract,点击Add

点击 Fetch response(获取响应)

Refetch response(重新获取响应)

复制token值备用,点击OK

93366653de18202357884767598

找到Request Engine

Number of threads:设置为 1

找到Redirections(重定向)

设置为:Always

设置payload 1 ,添加密码字典

设置payload 2 ,Payload type:选择Recursive grep

输入token

根据长度不同,得出密码:123456

登录成功

Cross-Site Scripting(CSS)

XSS(跨站脚本)概述

Cross-Site Scripting 简称为“CSS”,为避免与前端叠成样式表的缩写"CSS"冲突,故又称XSS。一般XSS可以分为如下几种常见类型:
    1.反射性XSS;
    2.存储型XSS;
    3.DOM型XSS;


XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。
XSS是一种发生在前端浏览器端的漏洞,所以其危害的对象也是前端用户。
形成XSS漏洞的主要原因是程序对输入和输出没有做合适的处理,导致“精心构造”的字符输出在前端时被浏览器当作有效代码解析执行从而产生危害。
因此在XSS漏洞的防范上,一般会采用“对输入进行过滤”和“输出进行转义”的方式进行处理:
  输入过滤:对输入进行过滤,不允许可能导致XSS攻击的字符输入;
  输出转义:根据输出点的位置对输出到前端的内容进行适当转义;


你可以通过“Cross-Site Scripting”对应的测试栏目,来进一步的了解该漏洞。

反射型xss(get)

反射型XXS是一种非持久性的攻击,它指的是恶意攻击者往Web页面里插入恶意代码,当用户浏览该页时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的目的。这里插入的恶意代码并没有保存在目标网站,需要引诱用户点击一个链接到目标网站的恶意链接来实施攻击。

先点击submit

按照提示输入:kobe

地址栏显示,请求方式为GET

绕过方式一:浏览器地址栏

因为输入的Payload会在地址栏显示,而地址栏是没有长度限制的
所以可以之间在地址栏插入Payload

<script>alert("123")</script>

绕过方式二:修改html代码

将maxlength修改为:100

<script>alert("321")</script>

反射性xss(post)

根据提示登录

尝试输入

<script>alert("dd")</script>

#对输入内容没有长度限制

再输入:

<script>alert(document.cookie)</script>

存储型xss

存储型xss 顾名思义就是恶意脚本会同正常信息一起被存到数据库或者文件中,等到用户在访问这个页面时就会成为受害者,这种漏洞常见于论坛、博客以及留言板。

<img src=1 οnerrοr=alert(1) >

复制链接,新建页面打开,出现弹框,证明存储型XSS可以影响每一个访问此页面的用户

DOM型xss

什么是DOM:

文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。它是一种与平台和语言无关的应用程序接口(API),它可以动态地访问程序和脚本,更新其内容、结构和www文档的风格(HTMl和XML文档是通过说明部分定义的)。文档可以进一步被处理,处理的结果可以加入到当前的页面。DOM是一种基于树的API文档,它要求在处理过程中整个文档都表示在存储器中。另外一种简单的API是基于事件的SAX,它可以用于处理很大的XML文档,由于大,所以不适合全部放在存储器中处理。  --  百度

这里利用了DOM 将字符串进行了拼接并把值给a标签的href,然后输出一个what do you see?

构造payload:

><img src='#' οnmοuseοver="alert('xss')">

DOM型xss-x

这一关也是利用了DOM将字符串进行了拼接并把值给a标签的href

构造payload:

><img src='#' οnmοuseοver="alert('xss')">

#' οnclick="alert(111)">

' οnclick="alert('xss')">

#没有弹窗?

xss盲打

输入内容,没有回显

查看提示,可以登录后台

输入payload:

<script>alert("xss")</script>

登录后台,发现弹窗

xss之过滤

输入:<script>alert("xss")</script>

发现网站做了过滤

大小写绕过:

<sCript>alert('xss')</scRIpt>

<SCRIPT>alert('xss')</SCRIPT>

使用非<script>的其他标签:

<img src=1 οnerrοr='alert("xss")'>

XSS之htmlspecialcharss

htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。 

预定义的字符是:

&(和号) 成为&amp;

" (双引号) 成为 &quot;

' (单引号) 成为 &apos;

< (小于) 成为 &lt;

> (大于) 成为 &gt;

HTMLSpecialChars重要性:

如果不用HTMLSpecialChars,就会导致读取时,要把" <script>"之类的HTML标签“原本”的输出,而这一输出就有漏洞了,万一那个插入数据库的人是黑客,插入的不是一般的字符串,而是 “ <script> <b> <body>”等等之类的东西,读取后,就是一个HTML文档之类的东西,这样,他可以利用这个漏洞欺骗其他人,或者借这个漏洞攻击别人等等,搞个框架跳转到某一网站等等操作。

                                                                                                                                        -- 源自百度

payload:

' οnmοuseοver='javascript:alert(1)' 

xss之href输出

HTML小知识之src 和 href 的区别_src标签-CSDN博客

源码对双引号及单引号以及左右尖括号均会被转义,可以使用javascript伪协议来执行js

javascript: 这是一个伪协议,表示接下来的内容是 JavaScript 代码,可以在当前页面的上下文中执行。

alert(): JavaScript 函数,用于在浏览器中显示一个警告框,其中显示指定的消息。

document.cookie: 这是一个 JavaScript 表达式,用于获取当前页面的 Cookie 值。Cookie 是一种用于在客户端和服务器之间存储数据的机制,它可以用于标识和跟踪用户会话状态。

payload:

javascript:alert("/xss/")

显示当前页面cookie:

javascript:alert(document.cookie)

XSS之JS输出

javascript:alert("/xss/")

输入的攻击代码被发送到了最外面的<script>标签中了,并且没有被编码。

首先要用’:闭合掉当前的语句,然后插入新语句,最后再用//注释掉老语句遗留下来的’;

';alert(document.cookie);//

参考:

跨站脚本攻击(XSS)_xss跨站脚本攻击_来日可期x的博客-CSDN博客

 Pikachu靶场——XSS漏洞(Cross-Site Scripting)_来日可期x的博客-CSDN博客

pikachu靶场实战之XSS漏洞(2) - 夜雨的安全笔记​​​​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1173698.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

uni-app学习笔记

目录 一、前期准备 1、项目认识 2、pages.json基本配置 3、创建页面 二、tabBar 1、获取图标 2、代码配置 三、基础认识 1、页面生命周期 2、App.vue应用生命周期 四、基础组件 1、scroll-view可滚动视图区域 2、提示框 3、swiper滑块视图容器 4、form表单组件 一…

第 370 周赛 100112. 平衡子序列的最大和(困难,离散化,权值树状数组)

太难了&#xff0c;看答案理解了半天 题目的要求可以理解为 nums[ij] - ij > nums[ii] - ii &#xff0c;所以问题化为求序列 bi nums[i] - i 的非递减子序列的最大元素和需要前置知识&#xff0c;离散化&#xff0c;树状数组离散化&#xff1a;将分布大却数量少(即稀疏)的…

【嵌入式框架】搭建调试输出、建立时间系统

一、Zorb简介 Zorb Framework是一个基于面向对象的思想来搭建一个轻量级的嵌入式框架。 搭建Zorb Framework的目的是为在不能运行Linux的芯片上快速开发应用&#xff0c;不用反复造轮子。 Zorb Framework的初步设计功能有&#xff1a; 1、时间系统功能zf_time 2、环形缓冲…

微信小程序获取openid

1.需要小程序中调用 wx.login获取临时code值&#xff08;每次获取的code值只能用一次&#xff09; wx.login({success (res) {console.log(res)} }) 打印结果为&#xff1a; 2.调用微信提供的apid接口&#xff0c;获取openid&#xff0c;入参需要三个参数&#xff1a;AppID(小…

SPSS单因素方差分析

前言&#xff1a; 本专栏参考教材为《SPSS22.0从入门到精通》&#xff0c;由于软件版本原因&#xff0c;部分内容有所改变&#xff0c;为适应软件版本的变化&#xff0c;特此创作此专栏便于大家学习。本专栏使用软件为&#xff1a;SPSS25.0 本专栏所有的数据文件请点击此链接下…

Python 用户输入和字符串格式化指南

Python 允许用户输入数据。这意味着我们可以向用户询问输入。在 Python 3.6 中&#xff0c;使用 input() 方法来获取用户输入。在 Python 2.7 中&#xff0c;使用 raw_input() 方法来获取用户输入。以下示例要求用户输入用户名&#xff0c;并在输入用户名后将其打印在屏幕上&am…

Prometheus接入AlterManager配置企业微信告警(基于K8S环境部署)

文章目录 一、创建企业微信机器人二、配置AlterManager告警发送至企业微信三、Prometheus接入AlterManager配置四、部署PrometheusAlterManager(放到一个Pod中)五、测试告警 注意&#xff1a;请基于 PrometheusGrafana监控K8S集群(基于K8S环境部署)文章之上做本次实验。 一、创…

IDEA快捷键总结+常识积累

&#xff08;一&#xff09;常用快捷键总结 以下快捷键输入完成后按Tab键即可。 1、输入main public static void main(String[] args) {}2、输入sout System.out.println();3、输入fori for (int i 0; i < ; i) {}4、输入foreach&#xff08;增强for循环快捷键&#x…

CMake引用QT、CMake构建一个转换为3d tile的开源代码

在CMake里单独运行一下 find_package(Qt5 REQUIRED COMPONENTS Core Xml Test) ,Core Xml Test 这三个是需要的qt组件; 情况如下;提示找不到QT; 根据资料,cmake引用qt需要3-4个方面, 首先Qt包含三个编译工具:moc、uic、rcc, moc:元对象编译器(Meta O…

翻页电子杂志制作功略,快收藏,保管好用!

翻页电子杂志&#xff0c;我相信这对大家很熟悉吧&#xff0c;大家也都经常看电子杂志吧。它和我们的生活紧密相关&#xff0c;也极大地改变了我们的阅读方式。听到这“翻页电子杂志”&#xff0c;是不是觉得制作起来肯定很难很复杂&#xff0c;需要专业的人才能制作呢&#xf…

2023 年最值得推荐的 10 款 iPhone 数据恢复软件

iPhone 从来都不是一个简单的打电话电话。它就像一台微型电脑&#xff0c;让我们互相联系、拍照、拍视频、发邮件、看文档、看书。然而&#xff0c;随着它成为日常生活的必需品&#xff0c;我们总是容易因各种原因丢失数据&#xff0c;如删除、恢复出厂设置、iOS 错误、文件同步…

python 之softmx 函数

文章目录 总的介绍小应用 总的介绍 Softmax函数是一个常用的激活函数&#xff0c;通常用于多类别分类问题中。它将一个实数向量转换为概率分布。这个函数的输出是一个概率分布&#xff0c;表示输入样本属于每个可能类别的概率。 给定一个具有 (K) 个不同数值的实数向量 z (z1…

从功能测试到测试开发,待遇翻倍,我整理的超全学习指南!

在这个吃技术的IT行业来说&#xff0c;我刚入行的时候每天做的也是最基础的工作&#xff0c;但是随着时间的消磨&#xff0c;我产生了对自我和岗位价值和意义的困惑。 一是感觉自己在浪费时间&#xff0c;另一个就是做了快2年的测试&#xff0c;感觉每天过得浑浑噩噩&#xff…

【Spring Security】Spring Security 认证与授权

在前面的章节中,我们沿用了Spring Security默认的安全机制:仅有一个用户,仅有一种角色。在实际开发中,这自然是无法满足需求的。本章将更加深入地对Spring Security迚行配置,且初步使用授权机制。 3.1 默认数据库模型的认证与授权 3.1.1、资源准备 首先,在controller包…

Linux文件共享的完美助手:深入探索Samba和NFS

1 samba介绍 1.1 samba基本介绍 作用&#xff1a;网络文件共享 smb&#xff08;Server Message Block &#xff09;是 Miscrosoft公司软件。 cifs &#xff08; Common Internet File System &#xff09;是Sum公司开发&#xff0c;是smb的开源版。 1.2 samba基本信息 服务启…

全球首例无液氦脑磁图辅助下的胶质瘤切除手术顺利完成

近日&#xff0c;在国家重点研发计划“新型无液氦脑磁图系统研发”项目支持下&#xff0c;首都医科大学附属北京天坛医院季楠教授团队完成全球首例无液氦脑磁图运动功能区定位辅助下的胶质瘤切除手术。 手术对一例肿瘤累及运动功能区的年轻女性在术前分别利用无液氦脑磁图仪和功…

使用Gradle创建SpringBoot项目

Spring Boot Gradle 插件在Gradle 提供Spring Boot 支持。它允许您打包可执行jar 或war 归档文件&#xff0c;运行SpringBoot 应用程序&#xff0c;并使用Spring-Boot-dependencies 提供的依赖管理。相关文档请参考&#xff1a; https://docs.spring.io/spring-boot/docs/curre…

【算法挨揍日记】day19——62. 不同路径、63. 不同路径 II

62. 不同路径 62. 不同路径 题目描述&#xff1a; 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为 “Finish” &#x…

2023年【熔化焊接与热切割】免费试题及熔化焊接与热切割考试总结

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 熔化焊接与热切割免费试题参考答案及熔化焊接与热切割考试试题解析是安全生产模拟考试一点通题库老师及熔化焊接与热切割操作证已考过的学员汇总&#xff0c;相对有效帮助熔化焊接与热切割考试总结学员顺利通过考试。…

小熊猫c++ 搭配keil

小熊猫c 搭配keil 除了vs codekeil插件外&#xff0c;用国产的小熊猫C也可以写keil代码&#xff0c; 两者区别在于vs code多一个有编译功能&#xff0c;而小熊猫C的相对vscode方式&#xff0c;需要多了一个手动切换到keil进行编译步骤。 目的&#xff1a;小熊猫C可以 【代码提…