曾见过一个名为"| rm -rf ~ | rm -rf /
的WiFi基站?
在编写某种简单分析或记录WiFi基站数据的脚本时,如何确保攻击者无法将shell命令注入表达式?
例如,我想在OpenBSD和airport -s
on OS X上记录来自ifconfig run0 scan
的数据,并且我已经在sh / tcsh中有一些脚本可以满足我的需求。但我怎么能确保我不会成为壳注射的受害者呢?
答案 0 :(得分:1)
这个问题已多次发布到OpenBSD列表(misc @)以及其他地方。 首先,我建议你不要执行从网络上获得的东西,特别是在脚本中。也许您可以编辑您的问题,以便更具体地了解您希望如何处理这些数据,以便我们的答案可以根据需要进行调整。
如果您想使用此信息连接到网络(作为网络管理员),请将自己置于脚本和输入之间。因此,在获得扫描输出后,只需复制您在实际脚本中批准的nwid。看看这个discussion on undeadly
如果您需要在输入上运行自动脚本以用于其他目的(数据收集?),请考虑使用您的脚本和静态编译的shell创建一个chrooted目录并运行chrooted。当然,你不应该依赖这种方法进行比你在问题中提到的更复杂的攻击。</ p>
希望这有帮助。