BnM*_*cGn 3 security common-lisp
在Doug Hoyte的Let Over Lambda的第102页,作者说这是关于他的安全读取字符串函数:
这意味着向量,位向量,gensyms,循环引用,#.,以及所有其余的都出来了.Safe-read-from-string 甚至不允许使用关键字或外包符号.
我正在努力想到关键字符号的邪恶用法让我的大脑紧张.他们是为了方便而被排除在外还是可以用它们来做恶事?
您可以创建安全的读者,例如,因为您希望保护您的软件免受不适当的输入.不合适的宇宙是非常大的,例如,攻击者可以向你提供大量随机符号名称,以期耗尽记忆力.
所以安全的读者是偏执狂.如果你需要一个安全的阅读器,一个好的做法是从没有能力的阅读器开始,然后开始添加你必须拥有的东西.但这很乏味.因此,另一种方法是丢弃大块的功能,然后仅在需要时将其添加回来.这个例子说明了第二种情况.他失去了关键字,因为他想要取消对包裹的任何访问.关键词只是附带损害.
这个例子很好,因为它简洁易懂.
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |