复习PHP-安全
admin
2023-07-03 11:04:28
0

1.安全记录

修改php.ini中的open_basedir,防止越目录访问文件。

如果php作为apache模块时,apache的权限一定不能为root。

如果php作为apache模块时,应当使用apache验证/LDAP/.htaccess等来设计自己的访问模型,并把这些代码作为php脚本的一部分。

php不能有root权限,否则将有可能有权限删除和修改系统中的任何文件。

任何用户提交的数据都必须经过检查和过滤。(特别对于文件的操作,必须要考虑到各种URL情况)

必须要考虑\0在文件路径中的作用。(C语言如果读到\0会停止继续读取)

SQL语句中的--是忽略后面句子的意思。

SQL中能确定变量的类型的,一定要强制转换类型,而不要让它存在不可预计的情况。(如age=’{$age}’,需要将$age强制int 或float)

必须时刻注意SQL语句中变量可能被变形的情况。

操作数据库时可使用mysql_escape_string/sql_escape_string/addslashes/str_replace把敏感字符转义。

记录SQL查询日志用于检查问题是个好办法。

合理运用PDO参数化进行SQL查询是个较好的办法。

-----(以下摘自PHP手册)

  • 永远不要使用超级用户或所有者帐号去连接数据库。要用权限被严格限制的帐号。
  • 检查输入的数据是否具有所期望的数据格式。PHP 有很多可以用于检查输入的函数,从简单的变量函数和字符类型函数(比如 is_numeric(),ctype_digit())到复杂的 Perl 兼容正则表达式函数都可以完成这个工作。
  • 如果程序等待输入一个数字,可以考虑使用 is_numeric() 来检查,或者直接使用 settype() 来转换它的类型,也可以用 sprintf() 把它格式化为数字。

2.错误报告

常用的可行性办法为测试开发时打开error_reporting 为E_ALL,正式上线改为0 并且关闭display_error 同时打开error_log记录错误日志。

虽然默认将register global、magic_quotes关闭但也应当检查一下是否确定为关闭。

------(以下摘自PHP手册,在用户提交表单时,必须联想到)

  • 此脚本是否只能影响所预期的文件?
  • 非正常的数据被提交后能否产生作用?
  • 此脚本能用于计划外的用途吗?
  • 此脚本能否和其它脚本结合起来做坏事?
  • 是否所有的事务都被充分记录了?

3.隐藏PHP

php.ini 文件里设置 expose_php = off ,可以减少他们能获得的有用信息。

另一个策略就是让 web 服务器用 PHP 解析不同扩展名。无论是通过 .htaccess 文件还是 Apache 的配置文件,都可以设置能误导***者的文件扩展名:

# 使PHP看上去像其它的编程语言
AddType application/x-httpd-php .asp .py .pl
4.保持更新
时常更新PHP版本啊哈哈。

相关内容

热门资讯

深度推荐:2026年五大精选手... 本文全面梳理2026年手机电池批发市场主流品牌,聚焦续航升级与库存优化两大核心需求。通过对五大头部品...
法国外长要求安理会就以色列在黎... △法国外长巴罗(资料图)当地时间5月31日,法国外长巴罗宣布,他已要求召开一次联合国安全理事会紧急会...
大数据赋能矿山安全 科技先锋刘... 在煤炭产业高质量发展与智慧矿山建设加速推进的背景下,矿山安全监管正从传统人工巡查向数字化、智能化、预...
解压玩具“娜塔莎”引争议,它的... 最近,一款名为“娜塔莎”的婴儿造型“捏捏乐”解压玩具在网络上和校园里悄然流行,商家宣称其可以用来缓解...
坚持“四个面向” 矢志科技报国... 5月30日,第十个全国科技工作者日如期而至。日前,中央宣传部、中国科协向全社会发布“最美科技工作者”...
显微镜的“能源革命” ——无液... 我国自主研制闭循环光耦合SPM系统,为量子科技前沿研究提供可持续的“中国方案”。 导读 Part ...
五部门开展“百场万企”大中小企... 记者从工业和信息化部获悉,工业和信息化部、国家发展改革委、国务院国资委等五部门联合印发通知,组织开展...
22年,一个免费软件的域名之战 奇怪的是,从 2004 年推出以来,Paint.NET一直托管在 getpaint.net网站上,无...
柬埔寨一名中国地产商人被残忍杀... 柬埔寨首都金边一名中国男子,疑遭人绑架、勒索并残忍杀害。其尸体于5月30日上午,在金边市朗哥区一处空...
2.5次元CNC加工厂家梳理 ... 导语:在精密制造领域,2.5次元CNC加工凭借其高精度检测与复杂零件加工能力,成为新能源汽车充电接口...