现在大部分web采用ajax通信,数据表现为json格式,因此可以尝试进行json注入。
json注入:根据实际情况进行注入。有的时候,可能是为了方便,有人会手动拼接下JSON,但是这种随手代码,却可能带来意想不到的安全隐患。
第一种方式,利用字符串拼接:
String user = "test01";
String password = "12345', admin:'true";
String json = "{user:'%s', password:'%s'}";
System.out.println(String.format(json, user, password));
//{user:'test01', password:'12345', admin:'true'},用户增加了管理员权限。
第二种,利用Parameter pollution, 类似http parameter pollution
String string = "{user:'test01',password:'hello', password:'world'}";
JSONObject parse = JSON.parseObject(string);
String password = parse.getString("password");
第三种,纯粹DOS。即使得解析错误。