![]() |
1
5
如果你
这是一个极端的例子,但如果是这样的话,你的网站就会被删除。希望您的权限不允许这样做,但它有助于说明需要进行卫生处理和检查。 |
![]() |
2
18
不要那样做。 它们基本上可以访问您在PHP中可以做的任何事情(查看文件系统、获取/设置任何类型的变量、打开与其他机器的连接以插入要运行的代码等等)。 |
![]() |
3
6
这个
|
![]() |
4
4
你可以说很多事情……问题是 不特定于PHP。 以下是简单的答案: 您的机器(或数据库)的任何输入都需要清理。 你发布的代码片段可以让用户运行他们想要的任何代码,所以它特别危险。 这里有一篇关于代码注入的很好的介绍性文章: |
![]() |
5
4
如果您允许任意代码在您的服务器上运行,那么它就不再是您的服务器了。 |
![]() |
6
3
亲爱的上帝 不 .我甚至为这个头衔而畏缩。允许用户运行任何类型的任意代码就像将服务器移交给他们一样。 我知道我上面的人已经说过了。但相信我。从来没有足够的时间让别人告诉你清理你的输入。 如果你 真的,真的吗? 希望允许用户运行某种代码。通过创建用户可以使用的某种psudo语言,使命令的一个子集对用户可用。a-la bbcode或markdown的工作方式。 |
![]() |
7
3
如果你想建立一个 online PHP interpreter ,您需要创建一个 REPL 翻译,不使用eval。 否则,永远不要执行任意的用户代码。曾经。 |
![]() |
8
2
做 不是 允许在服务器上执行未筛选的代码,句点。 如果您要创建一个允许交互式演示语言的工具,如此处所示的工具: http://tryruby.hobix.com/ 我会自己编写语言的一个子部分。理想情况下,您将使用它向新的程序员演示简单的概念,因此,如果您正确地实现了所有的特性,这是不相关的。 通过这样做,您可以通过 白名单 已知可接受输入。如果输入不在白名单上,则不会执行。 祝你好运! |
![]() |
9
-1
正如已经回答的,您需要清理输入。我想您可以使用某种类型的regex filtring来删除不需要的命令,比如“exec”,基本上每个php必须提供的恶意命令(或者可能被利用的命令),这是非常多的。 |
![]() |
Jacco · 未能格式化我的日期以在php中正确工作 1 年前 |
![]() |
jay ram · 如何在URL核心php中从API获取JSON? 1 年前 |
|
Ishwarya A · php电子表格在浏览器中显示多张excel 1 年前 |