
这个脚本基于 CVE-2018-6389,一个相当棘手的 Wordpress 问题,遗憾的是,尽管该问题已知已久,但开发该平台的团队可能不会修复它。
!!!重要:在你继续之前!!! 整个仓库和此处分享的信息可以以任何形式自由使用——复制、修改、升级、共享。但将共享信息用于教学目的之外,例如实验或保护你自己的 Wordpress 平台,很可能违反许多我不熟悉的法律。不要使用该脚本攻击网站!我对你的行为不承担任何责任。使用它即表示你同意这些条款。DDoS 攻击(拒绝服务)针对非自己拥有的网站,可能被视为恐怖袭击。 !!!确保你对自己的行为绝对确定,并在继续之前三思!!!
这个脚本我很久以前写的,但我知道你们很棒,所以决定分享给你们。按预期使用它!真的...
网上有很多关于这个主题的信息,以及几个现成的脚本,通常用 Python 编写,比如 Shiva 和 这个,我写这个脚本时从它们那里汲取了很多灵感,你也可以用它们来测试这个“弱点”于隔离环境中,但由于我是“安全狂”,我决定添加几个“小玩意”。
这里可以阅读一篇关于该主题的有趣博客
简而言之,如果你加载 https://your-wordpress-site.com/wp-admin/load-scripts.php?c=1&load=editor,common,user-profile,media-widgets,media-gallery(当然要修改链接指向你自己的实例),并且屏幕上显示的是“没有缓存的 JS 老兄”,那么网站就有问题。查询字符串中列出的每个参数都是不在缓存中的文件名。也就是说,它对磁盘上的每个文件进行 IO 操作,将它们聚合并返回给客户端。但文件数量相当多。比你请求它几次所需的资源要多得多。假设用一台笔记本和大约 50 mb 下行链路,大约 30 个中等规模的网站——托管,能坚持 20-30 秒,然后最终崩溃。
文件 websites.js 包含网站列表——“受害者”,我无意中忘记删除其中几个已知只要与脚本接触就会受影响的网站。我发誓我从未尝试过,只是这么认为。
文件 userAgents.js 包含用户代理列表,每次向受害者发出请求时随机选择。
fileList.js 包含要从“受害者”加载的各文件列表,以便在 WordPress 更新时,可以轻松添加或修改。
index.js 是实际执行脚本。
控制台以彩色输出每个“受害者”的信息,正在遭受 DDoS 的受害者的信息显示为红色。
npm install
//编辑 websites.js
node index.js
inurl: “wp-admin/load-scripts.php”
我决定将这个脚本献给我最喜欢的电视台 tvsz,因为我知道他们是我的“大粉丝”,而且最重要的是,因为他们会在我的列表中找到他们网站的链接。意思是给他们一点流量提升,回报他们以前的“帮助”。同时,借此机会问候我爸爸,他昨天过命名日,但没时间打电话给他。