ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

shell – 可以在bash脚本参数中利用漏洞吗?

2019-08-09 21:27:09  阅读:184  来源: 互联网

标签:php shell security regular-expression


我想将Web表单中的电子邮件地址传递给bash脚本.我正在使用以下正则表达式:

/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/

这够了吗?或者可以嵌入漏洞?

该脚本是从PHP调用的:

system('/usr/local/bin/script.sh "$email"');

解决方法:

您可以在PHP中清理和验证电子邮件地址,这比调用shell脚本更快,更安全.使用来自Web服务的未经过处理的数据调用shell脚本只会添加另一个可能破坏的东西.

$sanitized_email = filter_var($email, FILTER_SANITIZE_EMAIL);
if (filter_var($sanitized_email, FILTER_VALIDATE_EMAIL)) {
    echo "This sanitized email address is considered valid.\n";
    echo "Before: $email\n";
    echo "After:  $sanitized_email\n";    
} else {
    echo "This sanitized email address is considered invalid.\n";
}

上面的例子改编自examples on the PHP.net site.

标签:php,shell,security,regular-expression
来源: https://codeday.me/bug/20190809/1632981.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有