从python常规漏洞来看都有一个共同点,那就是危险函数中使用了可控参数,如system函数中使用到的(‘mv%s’%filename),如execute函数中使用到的username参数,如HttpResponse中使用到的nickname参数,这些参数直接从第一层入口函数中传进来,或者经过简单的编码,截断等处理直接进入危险函数,导致了以上危险行为。注入判断的核心就在于找到危险函数,并且判断其参数是可控的,找到危险函数这个只需要维护一个危险函数列表即可。当在语法树中发现了函数调用并且其名称在危险列表中就可以标记出该行代码,接下来的难点就在于跟踪该函数的参数,默认认为该危险函数的外层函数的