我Taint在 Perl 变量、模式等方面阅读了很多内容,例如从文档中:
$AUTOLOAD现在可以被污染如果您通过污染名称调用子例程,并且它遵循
AUTOLOAD函数,$AUTOLOAD则将(正确地)受到污染。
虽然谷歌对 taint 一词的定义是:
污点的定义
动词
- 污染或污染(某物)。
“空气被汽车的烟雾污染了”
同义词:污染、污染、掺假、感染、枯萎、损坏、土壤、毁坏、破坏、污秽名词
- 不良或不良质量或物质的痕迹。
“依附于政权的腐败污点”
同义词:痕迹、触摸、暗示、暗示、色调、污点、污点、污点、污名、污点、污名、耻辱、耻辱、耻辱
那么Taint在 Perl 中一般是什么意思呢?
简而言之:任何来自外部且因此不受程序控制的数据都会被标记为受污染。system 或 exec 等敏感操作拒绝处理这些受污染的数据,即您需要通过验证其内容来清除数据。正确使用可以防止命令注入和类似问题。