此对java.util.logging.FileHandler.!operator_javanewinit()
的调用包含一个路径操纵缺陷。该函数的参数是使用不受信任的输入构造的文件名。如果允许攻击者指定文件名的全部或部分,则有可能获得对服务器上文件的未经授权的访问,包括Webroot外部的文件,这些文件通常是最终用户无法访问的。暴露程度取决于输入验证例程(如果有)的有效性。 !operator_javanewinit()的第一个参数包含来自变量fileName的污染数据。受污染的数据源自对javax.servlet.ServletRequest.getParameter的早期调用。
验证所有不受信任的输入,以确保其符合期望的格式,并在可能时使用集中式数据验证例程。使用黑名单时,请确保清理例程执行足够的迭代次数以删除所有不允许的字符实例。
FileHandler fileHandler = new FileHandler(fileName, limit, count, true);