本篇介紹了以下代碼安全問題
1、SQL注入:JFinal
2、NoSQL注入:Neo4j
3、OGNL表達式注入:二次執行
4、危險的LDAP條目
5、Script注入
6、Spring Beans注入
7、同源方法執行
8、OGNL表達式注入:Struts2
9、不安全的反序列化:BeanUtils
10、JNDI查找地址注入
1、SQL注入:JFinal
詳細信息
SQL注入是一種數據庫攻擊手段。攻擊者通過嚮應用程序提交惡意代碼來改變原SQL語句的含義,進而執行任意SQL命令,達到入侵數據庫乃至操作系統的目的。使用Hibernate執行一個通過用戶輸入構建的動態SQL指令,會使攻擊者篡改指令的含義或者執行任意的SQL命令。
例如:下面代碼片段中,動態構造並執行了一個SQL查詢。
...
String queryString = "select * from db_user where name = '" + userName + "' ";
User.dao