当前位置:  开发笔记 > 数据库 > 正文

安全的只读sqlite3数据库

如何解决《安全的只读sqlite3数据库》经验,为你挑选了0个好方法。

我想给我的网站用户任意只读访问SQLite3数据库,而不让他们写入数据库或做任何其他损害.怎么样?

使db文件只读有一点帮助,但"ATTACH",".load"和".output"等命令允许人们读/写其他文件,这些文件可能不受保护.

当然,如果我知道所有这些命令,我​​只会过滤它们,但我最担心的是我没有想过的命令.

我曾尝试简单地改变sqlite3的源代码以禁止写入,但这比它看起来更难:即使SELECT语句似乎做了一些内部的INSERTS/etc.

注意: 我已经考虑过DOS攻击,并且会将cputime限制为5s或者其他什么.我主要担心的是文件损坏/"黑客攻击",而不是DOS.

chroot()可能有用,但看起来很极端.

思考?

编辑:哇,3年多前我真的问过这个吗?

从那以后,我实际上写了一个程序来做这件事.

我认为这是相当安全的(但我可能是错的).

这是一个示例查询.

推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有