Skip to content

超级SQL注入工具【SSQLInjection】V1.0 正式版 20180809

Compare
Choose a tag to compare
@shack2 shack2 released this 21 Aug 08:18
· 73 commits to master since this release
cf9ae63

20180809 V1.0 正式版---
修复因为配置文件未变更,导致自动识别到的错误注入标记字符未更换的问题而无法获取数据的问题。
修改sqlserver执行命令时,部分情况下,因为标准导致插入执行命令的语句位置不正确导致无法正确执行命令。

20180421 V1.0 正式版---
新增rand随机值标记,解决例如注册用户功能存在注入,因为用户名重复而无法重复发包注入类似问题。

20180421 V1.0 正式版---
新增处理随机Token功能,绕过部分防重复提交限制进行注入。
优化sqlserver/mysql获取非英文字符的效率,减少发包次数。

20180420 V1.0 正式版---
修复20180308版本处理sqlserver盲注环境下cast转换出现的意外情况时,导致无法获取数据的情况。

20180308 V1.0 正式版---
修复sqlserver盲注环境下使用了cast转换无法进行大小判断导致无法获取数据的情况。

201801113 V1.0 正式版---
修复根据URL自动生成测试数据包时,如果是https的URL,没有自动选择ssl的情况。

20171227 V1.0 正式版---
修复部分情况下无法停止线程。

20171223 V1.0 正式版---
修复上次修改代码导致的几个错误。
修复自动识别无法判断Union注入的情况。

20171205 V1.0 正式版---
增加使用between绕过大于等于过滤的情况。
修复SQLServer在某些特殊情况下执行命令异常问题。

20171202 V1.0 正式版---
修改线程池控制,降低CPU占用,提高发包效率。

20170916 V1.0 正式版---
修复mysql盲注,由于没有对显示的变量赋值,导致数据为空值问题。

20170905 V1.0 正式版---
修复获取数据,在停止后,按钮还处于禁用状态的问题。

20170811 V1.0 正式版---
优化ascii码取值范围,减少发包次数。
修复获取数据时获取指定位置的数据是否存在时判断没加上开始下标。
修改SQLServer配置文件中获取public和db_owner在盲注情况下,由于数字无法作为substring函数的参数而报错的问题。
修改获取SQLServer版本信息的配置文件,只获取前60个字符,后面的基本没用就不获取了。
增加SQLServer延时注入。

20170726 V1.0 正式版---
修复部分情况下,部分关键字在使用/!/包含导致sql错误,无法获取数据的情况。
修复部分情况使用数字填充列无效的情况,增加系统自定义设置填充列,可使用数字1或null填充。

20170720 V1.0 正式版---
修复部分情况下,部分关键字在随机大小写或者转换大写或者小写时失效。

20170719 V1.0 正式版---
修复替换字符如果原字符是大写的,填写的字符是小写无法替换,现在全部转换小写之后在替换。

20170717 V1.0 正式版---
由于数组设置为1M长度,导致HTTP响应过长时无法获取响应内容,现改为如果有Content-Length以Content-Length为准,如果是其他方式传输,默认最大支持。10M长度。

20160321 V1.0 正式版---
老问题,又是临时测试改代码忘了改回来,导致MYSQL盲注无法获取数据。
MYSQL盲注添加一个空格,防止注入标记前面缺少空格时无法获取数据。

20160314 V1.0 正式版---
修复一个之前临时测试将+=改成了-=导致盲注取逻辑错误。
增加单独导出批量扫描注入的原始URL和测试URL。

20160224 V1.0 正式版---
修改导入配置时,当已经存在替换字符时,导入的配置存在相同替换字符会冲突。
修改获取执行命令结果时,在SQLServer显示错误注入下结果字符没有进行HTML解码操作。
修正MySQL延时注入部分情况不能获取数据的问题。

20160122 V1.0 正式版---
修改批量注入爬行链接时,清空地址后,再次导入地址无法爬行链接问题。

20160121 V1.0 正式版---
修改注入绕过Base64编码处理可以选择编码次数,解决部分情况,存在二次Base64编码的情况。

20160119 V1.0 正式版---
添加选择自动识别编码方式(限单个域名获取数据,防止部分网站指定的编码和实际使用的编码不一致),批量注入会默认采用自动识别编码。
修正替换字符因为添加模板引发的处理错误。

20160118 V1.0 正式版---
修正批量扫描注入部分情况跳过了检测参数。
优化批量注入爬行连接,导入域名。
修改自动更新模式,自动下载更新程序包。
优化自动识别注入算法,采用相似度算法。
优化HTTP发包性能,在遇到响应慢或无响应的服务器,线程将自动休眠一定时间,减少CPU死循环。
修正获取网页编码部分情况正则错误问题。
添加自动修改网页编码,当响应头没有编码时,根据HTML中编码进行解码, 都没有则采用默认编码。
修正HTTP解析时,当出现deflate方式,没有deflate解码。

20160116 V1.0 正式版---
修正部分情况自动识别找不到关键字问题。
修改批量扫描注入算法,识别更精准,误报漏报率更低。(低于1%)。
增加注入绕过模板功能,程序默认了几个模板,同时也可将当前注入绕过配置保存成模板,供以后使用。

20160108 V1.0 正式版---
修正注入绕过使用正则替换导致部分特殊字符无法替换。
修正排序中存在数字时没有按照数字大小排序。
调整批量扫描注入长度比阀值(固定长度大于等于1%,动态长度大于1%),大于此阀值就会提示存在注入。
优化批量扫描注入占用CPU过高的问题,大幅度提升发包效率。每秒可处理发送上百个数据包。

20160105 V1.0 正式版---
修正随机大小写时对库名表明进行随机大小写时部分情况会出现表不存在的问题。(对带有点的词不随机大小写)
增加盲注以网页响应Content-Length长度作为判断方式,解决极少数情况,在没有网页body时无法使用关键字判断的问题。

20160101 V1.0 正式版---
修改发包数量计数器。
修复扫描注入无法开始爬行链接问题。
修正SQLServer显错注入时,由于SQLServer对字符进行了HTML编码,没有解码的问题,所以把HTML解码加上。
修改配置文件判断Access的方法,加一个函数ascw判断。

20151227 V1.0 正式版---
修改发包数量计数方式。
显示发包总数。
增加根据URL生成请求数据包功能(手册2.1章节)。
更新手册,增加代理设置方法。

20151215 V1.0 正式版---
修复少数情况使用and判断MySQL不报错问题,已修改成or方式。
修复部分情况识别网页编码错误问题。
修复错误注入自动标记错误问题,手抖改了代码改出来的毛病。
优化自动识别注入测试payload。

20151204 V1.0 正式版---
修复自动识别注入时部分情况不自动标记。
修复读取批量注入跳过不检测参数时发生错误。
优化HTTP发包性能。
更新使用手册到1.5版本。
增加对于登录点的or类型的注入自动识别特征。
增加自动识别网页编码失败时,提示人工设置编码。

20151203 V1.0 正式版---
修复自动识别注入依靠状态码判断数字转换错误问题。
修复批量扫描注入右键菜单未正确清除URL问题。
在获取数据的表格增加右键菜单,清空,无法自动删除列时可以使用清空。
优化爬行连接时,去掉不标准的URL。
优化批量检测Bool型SQL注入的算法,降低误报率。
增加自动识别注入时自动识别网页编码。
增加接收数据包时自动根据header头部编码识别网页编码,如果没有编码才采用人工设置的编码。

20151118 V1.0 正式版---
优化性能。
增加延时盲注功能,目前延时盲注支持mysql,可在判断值这里设置时间判断单位秒,时间要比超时时间稍微小点。
更多延时数据库支持敬请期待。
增加生成GET/POST数据包模板功能,修改请求的地址和HOST即可发包,不用每次都去抓包了。(数据包右键菜单)
增加GET/POST提交方式互相转换功能。(数据包右键菜单)
更多数据库支持敬请期待,下期将支持DB2/PostgreSQL。

20150913 V1.0 正式版---
修复绕过注入时,由于字符处理问题导致可能无法正常获取数据(如前面版本自动识别注入获取不到数据库类型)
修复绕过注入使用随机大小写造成环境变量无法正常获取问题
添加保存和加载数据库结构功能,可将数据库结构保存在本地,下次获取数据时,可直接加载数据库的结构信息。

20150730 V1.0 正式版---
修复绕过注入使用随机大小写造成数据库和表名随机大小写导致无法正常获取数据。
此版本开始,使用.net framework 4.0

20150610 V1.0 正式版---
修复MySQL load_file读文件时,文件非UTF-8编码时,遇到中文将读取错误。

20150606 V1.0 正式版---
修复获取数据时,如果没有数据时,线程还会继续获取数据。
优化批量扫描注入的爬行深度,可在系统设置里面调整单个域名的最大爬行数和单个域名最大扫描URL数。
md5编码增加小写md5
获取mysql环境变量时,增加获取主机名称:@@hostname、安装目录:@@baseDir、数据目录:@@datadir

20150604 V1.0 正式版---
修复部分SSL协议版本问题导致https发包错误
修复批量扫描注入爬行链接在Windows xp,Server03下的兼容问题。

20150526 V1.0 正式版---
优化体验
增加默认最大线程设置
修复chunked传输长度计算逻辑错误导致数据获取错误

20150520 V1.0 正式版---
优化体验
修改数据导出格式,导出csv格式

20150519 V1.0 正式版---
优化批量扫描注入发生错误的bug
修复内存不足,导致软件闪退问题
修复批量扫描注入结果无法排序问题
修复自动识别注入时,选择数据库类型错误
修复HTTP发包组件解析chunked传输方式逻辑错误,导致读取网页内容不完全
修复SQLServer部错误显示注入,部分情况由于数字转换没报错导致无法获取数据情况

20150516 V1.0 正式版---
优化SQLServer部分情况无法获取表、列、数据的情况
添加未知注入和未知数据库,自动识别注入,先自动选择未知,避免误解。
正式开放SSL功能,针对HTTPS的页面也可以注入了。

20150508 V1.0 正式版---
优化代码
修复批量扫描注入,死循环问题导致CPU占用异常

20150505 V1.0 beta20---
批量扫描注入添加导出爬行URL功能、清空URL-右键菜单
优化批量扫描注入功能
修复Socket超时设置由于静态变量,导致二次自动乘以1000,造成超时时间过长,导致CPU占用过高,性能下降

20150503 V1.0 beta19----
修复手动添加数据库时,关闭闪退。
优化CTRL+F查找字符功能,这个是隐藏功能,可自行在文本框里使用CTRL+F查找
修复Socket超时设置无效导致HTTP请求超时设置无效,造成CPU占用过高,性能下降
新增系统设置-最大列-用于在自动识别注入,进行Union测试时,判断最大列,超过此数将停止判断
优化修复部分不影响功能的bug

20150321 V1.0 beta18----
修复添加绕过字符后,重新打开界面没有显示替换处理字符。
修复添加绕过字符后,删除替换字符时,实际未生效。
新增base64编码处理。
优化代码。

20150315 V1.0 beta17----
修复发包序号多线程操作不同步问题,采用不重复ID算法。
新增表格数据排序功能,点击列名称即可实现顺序、倒序排列。
修复界面放大时,编码转换中UI错乱问题。
在注入中心添加获取数据按钮,配置完成后可点击切换到数据中心自动获取环境变量。
对多个文本框添加全选CTRL+A快捷键。

20150313 V1.0 beta16----
修复SQLServer2005错误注入无法获取数据问题,payload里面使用的and在部分情况下,不会报错
新增md5编码和md5在线解密,支持接口(www.cmd5.com、www.md5.com.cn、www.xmd5.org、www.somd5.com、www.md5.cc、www.pmd5.com)
新增配置设置,允许设置软件在关闭时是否自动保存配置信息

20150201 V1.0 beta15----
修复注入绕过时,选择了随机大小写,导致替换字符失效问题。
修改、优化批量注入扫描方式,先爬行一次,在扫描。
增加自动保存替换字符。
修复一个http发包遇到301状态时一个死循环问题。

20141230 V1.0 beta14----
修复302跟踪由于URL跟踪错误,导致报400错误。

20141228 V1.0 beta13----
修复文件读取路径不兼容问题。
修复一个union注入显示列识别错误问题。

20141221 V1.0 beta12----
修改批量扫描,支持批量检测指定的URL,选择深度0即可。
修复一个闪退问题。
修复其他一些小问题。

20141221 V1.0 beta11----
修改批量扫描,支持批量检测指定的URL,选择深度0即可。
修复一个闪退问题。
修复其他一些小问题。

20141220 V1.0 beta10----
修复无法批量扫描注入的问题几个bug。
提高注入识别和扫描的准确率。
修复其他一些小问题。

20141219 V1.0 beta10----
修复无法扫描注入的问题。
修复死循环bug一个。
优化自动识别注入准确率。
修复HTTP日志文件内容被二次追加问题。

20141218 V1.0 beta9----
修复解析HTTP头信息报异常问题。
修复其他一些小问题。
优化自动识别注入准确率。
改进优化HTTP日志记录方式,使用文件记录发包数据,记录日志较多情况下,再也不担心内存爆了,建议调试好了,关闭日志记录,这个会占用部分效率,需要的时候随时打开。
新增批量注入扫描,只需要导入域名列表就可以批量扫注入了。

20141217 V1.0 beta8----
修复导入配置没有刷新配置问题。
修复Union注入由于反射查询参数导致识别字段显示列不准确问题。
修复某些情况下判断注入数据库类型不准确问题。

20141216 V1.0 beta7----
修复gzip解压缩错误,长度大于100kb无法处理问题。
修复解析HTTP头出现null指针异常。
修复MySQL盲注没有使用16进制问题,在单引号被转义后无法获取数据问题。

20141215 V1.0 beta6----
修复自动识别注入union判断显示列不准确问题,解码出现异常问题。
修复Access盲注无法判断数据库问题。
增加查找盲注关键字功能。在注入标记好后,可自动查找盲注关键字。

20141214 V1.0 beta5----
修复无法解码问题和,解码出现异常问题。
增加自动识别注入,并自动配置注入,目前此功能只能对body长度不变,或状态码进行简单识别,如识别失败或获取不到数据,请人工识别。

20141213 V1.0 beta4----
修复导出数据时发生异常,无法正常导出数据问题。
修复Oracle错误显示注入,选择列过多时无法获取数据的问题。
修复POST提交数据中没有Content-Length头时,协议错误问题。
修复一些其他小问题。
新增SQLServer文件读写功能,可使用FileSystemObject、sp_makewebtask、备份等方法写文件,利用FileSystemObject读文件。读写文件不要超过4000个字符。
新增编码转换功能,支持URLEncode、Base64、Unicode,16进制hex等编码转换。
新增关键字验证功能,可验证关键字是否配置正确。
新增注入绕过-发包延时,每一个包可控制延时时间,对付请求过快导致被墙问题。
新增注入绕过-随机IP头,在HTTP请求头重随机产生IP,绕过一些防护和实现IP欺骗

20141206 V1.0 beta3----
修复导出数据未使用多线程,导致导出数据假死。
修复MySQL错误显示注入获取不到数据的问题
修复选择错误注入时,提示union的列未配置。
修复数据较多时,导出数据界面假死。
新增注入绕过,可进行字符替换,简单绕过。