草庐IT

literal_eval

全部标签

php - 由于 phpunit 恶意文件 eval-stdin.php,端口 80 在 cpanel 上被阻止

我已将googleplus登录添加到我的网站(托管在共享服务器上)。google登录通过composer.json组合依赖库时,phpunit库是作为一部分下载的。它包含一个文件phpunit\phpunit\src\Util\PHP\eval-stdin.php。由于这个文件,我的域的80端口被阻止,因为他们说这是一个恶意软件文件。存储库链接是https://github.com/sebastianbergmann/phpunit以下是eval-stdin.php文件中的代码eval('?>'.file_get_contents('php://input'));有没有替代此代码的方法

php - Json eval 无法解析数据

我有一个php程序,我只在其中测试一些示例数据。我收到错误消息,因为元素列表后缺少]。我该如何阅读?$dataDetailsList=array();array_push($dataDetailsList,array('a'=>'1','b'=>'2','c'=>'3','d'=>'4','e'=>'5'));echojson_encode(array("DataDetailsList"=>$dataDetailsList));然后在我的jQuery处理器中我这样做。functionrequestData(){$.ajax({url:'live-server-data.php',suc

php - 在没有 Eval 的情况下在字符串中执行 PHP 代码

目前正在开发一个“简单”的模板类,问题是如何在不使用eval的情况下在字符串中执行PHP代码?以下示例是我的模板类的工作方式:$user='Dave';ob_start();include'index.tpl';$content=ob_get_clean();//String$pattern=sprintf('/%s\s*(.+?)\s*%s/s','{{','}}');//replacewithphptags$new_content=preg_replace($pattern,'',$content);echo$new_content;索引.tplHello{{$user}}!我得到

php - WordPress 中使用 eval() 插件的漏洞示例

我继承了一个WordPress网站,该网站使用RunPHP插件在帖子之间执行PHP代码片段。我觉得这不是实现此类功能的最佳方式。但由于这是在很长一段时间内功能正确的遗留代码,我需要一些问题场景的可靠示例。对于那些不熟悉RunPHP的人来说,它是一个使用eval()执行嵌入在Post或Pagebody中的PHP代码的插件。代码块永远不会从用户那里收到,而是由网站所有者/内容创建者输入数据库。此插件在我们上下文中的用例如下。表单创建为Post,其提交操作设置为Page(我们称之为表单处理程序)。表单处理程序在其主体中包含PHP代码,并且为该页面激活了RunPHP插件。当提交表单时,表单处理

php - 将 PHP 字符串传递给 JavaScript : unterminated string literal

我正在将PHPvar分配给我的javascriptvar并通过以下方式发送到PHP文件ajax-jQuery,但我的php变量包含换行符我已经替换为e.g.$values1='abcpqrxyz';$values2='xyzlmn';javascript-vardata='val1=&val2=';然后ajax脚本将数据发布到PHP文件但是当我在控制台上打印此数据时,出现错误-SyntaxError:unterminatedstringliteral.有人能帮忙吗? 最佳答案 你的JS代码:vardata='val1=&val2='

PHP eval(gzinflate(base64_decode(..))) hack - 如何防止它再次发生?

我们最近有一个网站被黑了,一些PHP代码被注入(inject)到index.php文件中,看起来像这样:eval(gzinflate(base64_decode('s127ezsS/...bA236UA1')));该代码导致包含另一个PHP文件(cnfg.php),这导致显示一些与药物相关的垃圾邮件(但仅对googlebot等人可见)。这看起来像是WordPress的pharmahack,只是我们没有运行WordPress。该代码已被删除,但我想防止将来发生此类事件。我意识到这是一个相当广泛的问题,可能存在无数的安全漏洞,但我认为我会把它放在那里,以防任何人过去遇到过此类问题。允许上传

php - 将 PHP 代码存储在数据库中,并在运行时对它进行 eval() 处理,不安全吗?

我构建了一个程序来存储、检索和eval()s来自SQLite数据库的代码。在我因为糟糕的编码习惯而受到指责之前,让我们将其视为理论上的,并假装我这样做有充分的理由。抛开所有其他考虑因素,假设用户输入不是一个因素,将PHP代码存储在数据库中并使用eval()运行它是否存在固有的安全风险?说明:我不是eval()ing用户提交的内容。SQLiteDB文件与我的其他文件位于同一目录中,并且应用了相同的安全性。请不要对性能、缓存等发表评论。我知道所有这些。 最佳答案 eval()本身并不安全。这只是不好的做法,不清楚并且会引发一大堆错误和安

php - 使用 eval 解析表单输入的方程式的最安全方法

我想知道在PHP中使用eval()来解析用户填写表单时输入的公式时应该检查哪些类型的内容。我看过很多关于eval()的答案,但似乎并非所有人都同意。这是我收集到的:不要对字符串使用eval(这可能是个问题,因为它是我需要解析的公式)去除来自表单的输入(我不完全确定我需要去除哪些东西)Eval可能是邪恶的,也可能不是邪恶的,并且存在安全风险(是否有其他方法可以解析字符串中的方程式?)你们认为我应该怎么做?编辑:我尝试了eval方法,虽然它确实有效,但我使用的环境卫生不支持两个以上的操作数。由于我真的不想编写自己的(可能不安全的)卫生正则表达式,所以我将查找并使用预先编写的数学类。感谢大家

php - 如何在 PHP 中返回常量或文本字符串——eval() 是正确的选择

我在mysql表中有一行,其列包含:Thisisatest.我在同一个mysql表中有另一行,其同一列包含:K_IM_A_CONSTANT在PHP脚本的前面,存在这行代码:define(K_IM_A_CONSTANT,'Thisisaconstant.');我怎样才能回显列的内容,返回的值要么是“这是一个测试”。或“这是一个常量。”,取决于所选的行?eval()是这样做的方法吗?如果是这样,eval()语法看起来如何?我在尝试让eval()工作时遇到了太多错误。感谢您的帮助。 最佳答案 使用constant功能:if(defined

没有 Eval 的 PHP 动态鸭子类型(duck typing)

例子:func();//Returnsainthiscase有没有什么方法可以不使用eval()来做到这一点? 最佳答案 当然你可以不用eval()。PHP会将包含类名的字符串或文字作为new运算符的参数。$duck=new$input;//parenthesesareoptionalecho$duck->func(); 关于没有Eval的PHP动态鸭子类型(ducktyping),我们在StackOverflow上找到一个类似的问题: https://sta