这段时间一直在写一个整站,前几天才基本完成了,所以抽个时间写了一篇对于php安全的总结。 技术含量不高,过不了也没关系,希望能一些准备写网站的朋友一点引导。...在放假之初,我抽时间看了《白帽子讲web安全》,吴翰清基本上把web安全中所有能够遇到的问题、解决思路归纳总结得很清晰,也是我这一次整体代码安全性的基石。...那么对于我们,怎么使用一个安全的hash计算方法?...在最新的php5.5中,这种hash算法成为了一个正式的函数,以后就能使用该函数来hash我们的密码了。 验证码安全性 这是我刚想到的一点,来补充一下。...这也仅仅是我自己写代码中积累的一些对代码安全性的一个见解,如果大家还有更好的想法,可以和我交流。希望大家也能写出更安全的代码。
一、屏蔽PHP错误信息 在配置文件中,设置display_errors=On,开启了PHP错误显示,在PHP程序遇到错误时,会暴露PHP文件和系统路径,从而容易被威胁,我们需要设置: ;默认开启 ;Default...开启完全模式 PHP的安全模式是为视图解决共享服务器(shared-server)的安全问题而设立的,开启之后,会对系统操作、文件、权限设置等方法产生影响,减少被黑客植入webshell所带来的安全问题...,从而在一定程度上避免一些未知的攻击 ;开启安全模式 safe_mode=On safe_mode_gid=Off 设置后,所有命令执行函数都被限制只能执行safe_mode_exec_dir指定目录里的程序...,system,chroot,scandir…… 参考:《PHP建议禁用的危险函数》 五、PHP中的Cookie安全 1.Cookie 的 HttpOnly HttpOnly 可以让 Cookie 在浏览器中不可见...性能的同时,也增加了安全性,使用 php -m 命令可以查看当前 PHP 所加载的模块
PHP的安全模式是为视图解决共享服务器(shared-server)的安全问题而设立的,开启之后,会对系统操作、文件、权限设置等方法产生影响,减少被黑客植入webshell所带来的安全问题,从而在一定程度上避免一些未知的攻击...;开启安全模式 safe_mode=On safe_mode_gid=Off 设置后,所有命令执行函数都被限制只能执行safe_mode_exec_dir指定目录里的程序,例如shell_exec()...,chroot,scandir…… 参考:《PHP建议禁用的危险函数》 五、PHP中的Cookie安全 1.Cookie 的 HttpOnly HttpOnly 可以让 Cookie 在浏览器中不可见,...性能的同时,也增加了安全性,使用 php -m 命令可以查看当前 PHP 所加载的模块 行云博客 - 免责申明 本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途...本文链接:https://www.xy586.top/11480.html 转载请注明文章来源:行云博客 » PHP安全配置
近期做个小开发需要用到随机图像。 直接上代码 方法一 php $img_array = glob('images/*....php srand( microtime() * 1000000 ); $num = rand( 1, 4 ); switch( $num ) { case 1: $image_file...== ($file = readdir($handle))) { //遍历该php教程文件所在目录 list($filesname,$kzm)=explode("."...php /********************************************** * Filename : img.php * Author : freemouse * Usage...: * php> * php?
file_exists($source)) return false; /* 根据类型载入图像 */ switch (exif_imagetype($source)) {...isset($image)) return false; /* 获取图像尺寸信息 */ $target_w = $width; $target_h = $height;...($resize_h - $target_h) / 2 : 0; /* 绘制居中缩放图像 */ $resize_img = imagecreatetruecolor($resize_w,
一、我是新手我怕谁 新手程序猿通常会直接存储明文密码在数据库中,好一点的会使用MD5来加密密码后存储md5(password),再好一点的会sha1加密密码后存储sha1(password...PBKDF2加密算法就是牺牲了时间来换取安全,一个明文的密码+随机的盐,然后哈希散列加密后存储起来,这是我们前面说的(二、加盐salted)。把这个过程重复100次,得到的结果存储起来。...但是,scrypt在算法层面只要没有破绽,它的安全性应该高于PBKDF2。 五、请使用bcrypt!请使用bcrypt!请使用bcrypt!...bcrypt是跨平台的、专门为密码存储而设计的算法,bcrypt所接受的密码长度必须是8至56个字符,并将在内部被转化为448位的密钥。基于Blowfish加密算法变形而来。...bcrypt经过了很多安全专家的仔细分析,使用在以安全著称的OpenBSD中,一般认为它比PBKDF2更能承受随着计算能力加强而带来的风险。
PHP——2(PHP变量作用域) PHP——3(PHP变量分离/引用(Variables Separation)) 为辅助阅读,可直接跳过 首先声明,我并没有去读PHP的源码,只是对于php的有时候诡异的表现感兴趣...首先引用laruence关于PHP变量内部存储结构的部分内容(稍作修改) 在PHP中,所有的变量都是用一个结构-zval来保存的, 在Zend/zend.h中我们可以看到zval的定义: typedef...在PHP中,所有的变量都会存储在一个数组中(确切的说是hash table)。...2){ ["member"]=> long(1) refcount(1) } resource(4) of type (stream) refcount(2) 分析绘制整个存储结构如下...image.png 对照此图就可以知道PHP各种类型的变量在内存中存储结构和用户变量如何跟内存结构挂钩
PHP安全模式详解 (huangguisu) 这个是之前的笔记,随笔贴上而已。PHP安全模式在5.4的时候已经不再支持了。...安全模式 一直没有用过php的safe_mode安全模式,以此说明作为日后参考。 PHP 的安全模式是为了试图解决共享服务器(shared-server)安全问题而设立的。...配置选项的简要解释 safe_modeboolean 是否启用 PHP 的安全模式。...php的安全模式是个非常重要的内嵌的安全机制,能够控制一些php中的函数,比如system(), 同时把很多文件操作函数进行了权限控制,也不允许对某些关键文件的文件,比如/etc/passwd, 但是默认的...PHP_AUTH 变量 在安全模式下,变量 PHP_AUTH_USER、PHP_AUTH_PW 和 PHP_AUTH_TYPE 在 $_SERVER 中不可用。
将处理后的结果sign拼接到参数中,进行传递 2.服务端根据客户端生成的sign,与自己的sign做比对,如果一致,则验证成功 3.由于里面的秘钥,是私钥,我们自己设定的别人无法知道,所以接口在一定程度上是安全的
PHP安全我见 不知道大家注意到没,博客的速度变快了很多。按捺不住还是搬家到了日本主机上,希望更快的速度能带给大家更好的体验。 经过一段时间的努力,基本上完成了一个整站的制作。...这次的文章也算是总结整个php代码编写的得与失,特别是在安全性上。...---- 在放假之初,我抽时间看了《白帽子讲web安全》,吴翰清基本上把web安全中所有能够遇到的问题、解决思路归纳总结得很清晰,也是我这一次整体代码安全性的基石。 ...login.php,用户点击注册页面,就跳转到http://localhost/register.php。...在最新的php5.5中,这种hash算法成为了一个正式的函数,以后就能使用该函数来hash我们的密码了。 验证码安全 我在之前的文章里已经详细叙述过了。
虽然PHP是世界上最好的语言,但是也有一些因为弱类型语言的安全性问题出现。...WordPress历史上就出现过由于PHP本身的缺陷而造成的一些安全性问题,如CVE-2014-0166 中的cookie伪造就是利用了PHP Hash比较的缺陷。...虽然这样PHP方便了程序员,但是随之而来却会带来一些安全性的问题。...b=a[0]=240610708 参考文献 PHP 比较运算符 PHP Float 浮点型 PHP 类型比较表 PHP 弱类型总结 PHP Hash比较存在缺陷,影响大量Web网站登录认证、忘记密码等关键业务...PHP代码审计片段讲解(入门代码审计、CTF必备) 浅谈PHP弱类型安全 NJCTF2017 线上赛 web 题解 CTF之PHP黑魔法总结 Some features of PHP in CTF PHP
php安全配置 PHP 4.1~5.4,需要关闭register_globals 关闭错误显示 范例 System Linux 98.199-245-23.rdns.scalabledns.com 2.6.32.../configure’ ‘–prefix=/usr/local/php’ ‘–with-config-file-path=/usr/local/php/etc’ ‘–enable-fpm’ ‘–with-fpm-user...) Path /usr/local/php/etc Loaded Configuration File /usr/local/php/etc/php.ini Scan this dir for additional...On On extension_dir /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525 /usr/local/php/lib/php...:/usr/local/php/lib/php .
用户权限 1.2. web server 版本信息 1.3. php_flag / php_admin_flag 2. php.ini 2.2.1. chdir()函数安全演示 2.1....彻底解决目录于文件的安全 3.2. Session / Cookie安全 3.3. 注入安全 4. 执行效率 4.1.1. mysql 4.1. timeout 4.2....Apache mod_php / php-fpm 目录权限安全 1.1....开发于安全 3.1....Session / Cookie安全 session.save_path 默认session 存储在/tmp, 并且一明文的方式将变量存储在以sess_为前缀的文件中 $ cat session.php
PHP 安全与性能 摘要 我的系列文档 Netkiller Architect 手札 Netkiller Developer 手札 Netkiller PHP 手札 Netkiller Python 手札...用户权限 1.2. web server 版本信息 1.3. php_flag / php_admin_flag 2. php.ini 2.2.1. chdir()函数安全演示 2.1....彻底解决目录于文件的安全 3.2. Session / Cookie安全 3.3. 注入安全 4. 执行效率 4.1.1. mysql 4.1. timeout 4.2....Apache mod_php / php-fpm 目录权限安全 1.1....Session / Cookie安全 session.save_path 默认session 存储在/tmp, 并且一明文的方式将变量存储在以sess_为前缀的文件中 $ cat session.php
随着使用 PHP 环境的用户越来越多,相关的安全问题也变得越来越重要。...PHP 环境提供的安全模式是一个非常重要的内嵌安全机制,PHP 安全模式能有效控制一些 PHP 环境中的函数(例如system()函数),对大部分的文件操作函数进行权限控制,同时不允许对某些关键文件进行修改...但是,默认的 php.ini 配置文件并没有启用安全模式。 本文档将介绍如何使用 PHP 的安全模式功能来保护您网站的安全性。...一、启用 PHP 的安全模式 PHP 环境提供的安全模式是一个非常重要的内嵌安全机制,PHP 安全模式能有效控制一些 PHP 环境中的函数(例如system()函数),对大部分的文件操作函数进行权限控制...您可以通过修改 php.ini 配置文件启用 PHP 安全模式: 二、用户组安全 当您启用安全模式后,如果safe_mode_gid选项被关闭,PHP 脚本能够对文件进行访问,且相同用户组的用户也能够对该文件进行访问
2019 年,大多数的科技工作者 — 尤其是 Web 开发者 — 必须摈弃掉关于开发安全 PHP 应用的老一套。这对那些不相信能够开发出安全的 PHP 应用的人来说尤其重要....只要用户输入不能影响查询的结构,您就是安全的。(这包括存储过程。)...文件上传的另一个问题是安全地 下载文件 。 直接访问 SVG 图像将在用户的浏览器中执行 JavaScript 代码。...这是真的, 尽管 SVG 图像的 MIME 类型是以 image\ 为前缀 . MIME 类型嗅探可能导致类型混淆攻击。...(laravel 框架可以采用 Throttle 配置) 密码哈希 深入了解: 在 2016 年如何安全存储用户密码 密码安全的存储曾经是一个备受争议的话题,但现在实现起来相当简单,尤其是在 PHP 中
可以使用imagedestroy()函数销毁图像资源来释放内存。...JPEG文件或URL载入一副图像 imagecreatefrompng():创建画布并从PNG文件或URL载入一副图像 imagecreatefromwbmp():创建画布并从WBMP文件或URL载入一副图像...imagecreatefromstring():创建画布并从字符串中的图像流新建一幅图像 输出图像 PHP允许将图像以不同格式输出,而且每个格式都有专门的函数输出: imagegif():以GIF格式将图像输出到浏览器或文件中...imagejepg():以JEPG格式将图像输出到浏览器或文件中。 imagepeng():以PENG格式将图像输出到浏览器或文件中。...字体向图像中输入文字 拷贝图像 函数 说明 getimagesize() 获取图像的尺寸 imagecopy() 拷贝图像或图像的一部分 imagecopyresized() 拷贝图像或图像的一部分,并调整大小
0x00 隐藏php版本 expose_php=off 0x01 禁用危险的php函数 disable_functions=popen,pentl_exec,passthru,exec,system,scandir...0x06 关闭注册全局变量 在PHP中提交的变量,包括使用POST或者GET提交的变量,都将自动注册为全局变量,能够直接访问,这是对服务器非常不安全的,所以我们不能让它注册为全局变量,就把注册全局变量选项关闭...0x09 Php.ini包含补丁文件 可以根据需要,通过它包含或者nginx的模块在php.ini中引用。...在配置文件内引用的话,将影响到所以的网站,包含所有页面在php.ini中,找到此节: ; Automatically add files before or after any PHP document...;auto_prepend_file = “phpids.php” ;auto_append_file = “alert.php” 默认是空,请添加所包含的文件。
打开php.ini,查找disable_functions,按如下设置禁用一些函数 disable_functions =phpinfo,exec,passthru,shell_exec,system,...proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source request_filename ~* (.*)\.php) {...set php_url 1; } if (!...,show_source,touch,escapeshellcmd,escapeshellarg MySQL账号安全: 禁止mysql用户外部链接,程序不要使用root账号,最好单独建立一个有限权限的账号专门用于...查杀木马、后门 常见的一句话后门: grep -r –include=*.php ‘[^a-z]eval($_POST’ . > grep.txt grep -r –include=*.php