工作记录7.26,xss、路径遍历、http截断
这周学习并解决了常见的反射型、存储型xss过滤,http截断。
xss
常见做法是对string进行html过滤
msg= new HTMLFilter().filter(msg);
// 注意:如果HTMLfilter不支持对象,则需要先json序列化,再反序列化
// 如返回的是obj对象,T obj
String json_str= JSON.toJSONString(obj)
json_str= new HTMLFilter().filter(json_str);
T obj = (T)JSON.parseObject(json_str,obj.getClass())
return obj
HTMLFilter网上有很多实现,这里不做额外说明
路径遍历
攻击者可能提供类似下面的输入:
/safe_dir/../important.dat
过滤路径字符串
import org.apache.commons.io.FileUtils;
File file = FileUtils.getFile(file_path);
SQL注入
$换成#,简单粗暴,不过我很好奇为什么对象也能这么防止sql注入呢,str的倒是可以理解。
$(obj)
#(obj)