首页 > 解决方案 > 使查询易受 SQL 注入攻击

问题描述

我正在玩具应用程序中进行一些渗透测试。以下代码使应用程序易受攻击,因此我可以使用 登录'or'1'='1,但无法使用 Sqlmap 浏览表:

Session session = sessionFactory.getCurrentSession();

Query query = session
    .createSQLQuery("select * from product where product_id = '" + id + "' limit 0,1").addEntity(Product.class);

session.flush();

return (Product) query.uniqueResult();

我相信该createSQLQuery方法只允许一个陈述,为此我认为这种方法是问题所在。我怎样才能改变它以能够使用 Sqlmap 探索表?

标签: sqlsql-injection

解决方案


推荐阅读