4

好的,这听起来可能很荒谬,但这就是发生的事情:

  • 我已经在CodeIgniter上建立了一个可以正常运行的站点
  • 该站点显然是数据库驱动的,其中包含用户表(以及更多)
  • 今天,我登录了,在“名称”的位置......我看到的不是用户名"Use PDO" (我还检查了 db 表,来自 phpMyAdmin,具体字段似乎已更改:S)

我在想:“有人入侵了该网站”。可能是一个糟糕的(尽管有教育意义的)笑话?

我对吗?(我觉得问这个有点愚蠢,但无论如何......)

如果是这样,我应该怎么做才能防止将来发生这种事情?


提示:我所有的数据库访问都是使用 CodeIgniter 的 db 函数完成的,所以我想一切都应该被正确地转义。有任何想法吗?

4

2 回答 2

1

感谢@raina77ow,问题已得到解决。

Db 访问的情况非常糟糕,(准明显的)解决方案是开始使用Prepared statementsQuery bindings


参考: http ://codeigniter.com/user_guide/database/queries.html

于 2012-10-20T09:15:22.623 回答
-1

在我看来,至少有人试图注入代码。

use PDO; $db = new PDO(); $db->save();

或类似的东西,但最终将该数据保存在用户表中。我认为他一定试图在注册页面中注入代码(如果有的话)。在不知道数据库变化的情况下不能说更多。

希望这可以帮助。

于 2012-10-20T07:41:46.867 回答