七个习惯助你编写更安全的PHP程序

Written by 不可能不确定 on December 2, 2012 Categories: 编程杂记, 翻译  Tags:   Total 3,973 Views
  • 译   文:七个习惯助你编写更安全的PHP程序
  • 原 文 名:Seven habits for writing secure PHP applications, Increase the security of your Web applications
  • 原 作 者:Nathan A. Good
  • 译 作 者:不可能不确定(@SidCN)

当谈到安全的时候,我们至少要从三方面入手,平台的、系统的,以及你所编写的程序。而在编写PHP程序时,只有做到了以下七个方面,才能算得上保证了安全:

  • 验证输入
  • 保护文件系统
  • 保护数据库
  • 保护会话数据($_SESSION)
  • 防范跨站脚本攻击(XSS)
  • 防范伪造表单
  • 防范CSRF
(more…)

为ESX上的CentOS添加新硬盘

Written by 不可能不确定 on September 29, 2012 Categories: 建站相关  Tags:   Total 1,895 Views

一台运行在ESX上的CentOS服务器磁盘不够,现需要为其增加硬盘空间。计划新增加一个虚拟硬盘,并使用LVM进行卷管理,挂载到/store。

1、在ESX中增加一块新硬盘

在ESX中找到该虚拟机,在“Edit Setting”中,为其添加一块新硬盘,并记住其“Virtual Device Node”,如“SCSI(0:1)”。 (more…)

一次Gmail账号被封后解封的经历

Written by 不可能不确定 on January 15, 2012 Categories: 乱七八糟  Tags:   Total 5,268 Views

计划将一些邮件从现有的Gmail导出,并存储到一个新的Gmail中,于是新申请了账号,但在使用Gmail自带的“导入其它邮箱的邮件和联系人”的功能时,发现Gmail不支持从其它Gmail导入。

为了达到目的,我先利用QQ邮箱的收信功能,将Gmail中的部分邮件先转存到QQ邮箱中,再用Gmail的导入功能进行导入,结果的确也成功了。

但在成功后大约半个小时,我发现我的新Gmail账号已经无法使用,通过Gmail的多账号登录进行切换,密码输入成功后直接跳到一个账号被禁用的提示页面,紧接着,Android手机上也提示输入这个新邮箱的密码,无论输入什么,都提示账号信息错误。

(more…)

在PHP CLI下使用类似GET的方法传参

Written by 不可能不确定 on November 29, 2011 Categories: 编程杂记  Tags:   Total 4,035 Views

Linux下为了方便,有时候会直接使用命令行的方式来执行php程序,比如一些crontab任务之类,但通常写出来的大部分php程序,都没有考虑到命令行下的一些情况,直接使用GET进行参数传递也是常态,但这在命令行下却很无奈,尤其是传递多个GET参数时,连命令都无法正确执行——GET多参数分隔符&会妨碍命令的执行。

1、PHP CLI的参数传递方式

PHP CLI下参数的传递是使用Linux命令行的方式进行,将参数值按照指定的先后顺序依次排列,一旦顺序错误,最终传送的结果也将错误,而且,如果程序要支持命令行参数,还需要专门的分析和拆开$argv数组,如果是修改现有程序,工作量将会更大。

2、捕获参数,组装伪$_GET和$_REQUEST数组

命令行下是没有$_GET等变量的,但如果使用GET进行参数传递,程序中肯定会有对诸如$_GET和$_REQUEST数组的调用。如果要降低修改的工作量,最简单的办法就是,抓获CLI传递的参数,再将参数组装成一个$_GET和$_REQUEST数组。
为了避开cli中对参数的先后顺序的要求,让命令执行使用更容易分辨更让人熟悉的URL参数传递方式,可以按如下的格式来传递参数并捕获:

php filename.php "name=Roges&height=187.96&weight=99.79"

(more…)

Ubuntu 11.10中 Eclipse 3.7.1 安装ADT提示缺少org.eclipse.wst.sse.core

Written by 不可能不确定 on October 4, 2011 Categories: 随手记  Tags:   Total 10,866 Views

前段时间新装了Ubuntu 11.10 beta2,又使用Ubuntu Software Center下载了eclipse,版本是3.7.1,今天试着配置一下ADT,第一步就卡住了。 安装时无法进行下一步,详细信息中提示:

Cannot complete the install because one or more required items could not be found. Software being installed: Android Development Tools 12.0.0.v201106281929-138431 (com.android.ide.eclipse.adt.feature.group 12.0.0.v201106281929-138431) Missing requirement: Android Development Tools 12.0.0.v201106281929-138431 (com.android.ide.eclipse.adt.feature.group 12.0.0.v201106281929-138431) requires ‘org.eclipse.wst.sse.core 0.0.0′ but it could not be found

网上搜索,StackOverFlow有人给出了详细答案,3.4 / 3.5 / 3.6均可解决,只需要添加org.eclipse.wst.sse.core的依赖库即可。按照3.4等的升级url构造了一下3.7的如下:

http://download.eclipse.org/releases/ganymede/

点击Install New Software中的Add按钮,将这个添加到依赖库中,再安装ADT即可顺利进行。

一个 WordPress 木马样本分析

Written by 不可能不确定 on September 18, 2011 Categories: 建站相关  Tags: , ,   Total 4,010 Views

饭否看到zuola说得到一个wordpress木马脚本,于是就点了连接,并简单的看了看这个样本。原理比较简单,先判断访问来源是否是搜索引擎的蜘蛛或bot,再确定是否显示一个有问题iframe——木马的效力也取决于这个iframe中的内容。这一小段PHP脚本也完全可以用到其它任何PHP程序中。

将源代码做了个简单的整理如下: (more…)

PHP源码编码与转换:搞定首行为空和“锘匡豢”

Written by 不可能不确定 on September 8, 2011 Categories: 编程杂记  Tags:   Total 4,752 Views

总是有七弯八拐的原因让我们要将自己的PHP源码从GB2312转换到UTF8,而90%的情况下你会遇到麻烦——很有可能你已经不是第一个想将你手头的系统转换到UTF8的人,只不过前面那些人都被整郁闷了,因而你也有了这个机会。

1、编码转到UTF-8可能出现的问题

转换起来并不麻烦,而且网上有很多工具可以用于转换,但不推荐使用工具进行批量转换,编码转换时的不确定因素太多,比如原编码,甚至系统语言等,都会引起转换的失败。

PHP源码直接转换到UTF-8后,很有可能会遇到下面的两个问题:

  • 1、首行代码为空;
  • 2、顶行有多个“锘匡豢”;

当然,很多人已经解决了,还发了博文——不过这文章是让你郁闷的。这位用了两天时间终于解决了问题,但却舍不得与人分享一下。当然也有很靠谱的人,提供了使用VS进行解决的方法,不过搞PHP开发的还装VS的可能不多。 (more…)

利用PHP实现对服务器性能与状态的监控

Written by 不可能不确定 on August 31, 2011 Categories: 编程杂记  Tags: ,   Total 4,680 Views

最近由于工作上的原因,需要开发一套服务器性能的监控工具,主要是一些同架构同软件配置的服务器。考虑到最近用php比较多,随即决定使用php来实现。主要需要实现的部分功能如下:

  • 1、系统状态,如cpu / 内存 / swap等数据;
  • 2、MySQL的性能与运行状态;

其它主要是配合性的数据存储以及可视化。 (more…)

Sliverlight for WP7 中WebBrowser控件对js和css的支持性总结

Written by 不可能不确定 on July 6, 2011 Categories: 编程杂记  Tags:   Total 6,802 Views

最近因为工作上的原因,重拾C#做一个Windows Phone 7的客户端应用,虽然半途而废,不过也在碰摔中了解到了WP7的确是一个仓促之作,尤其是对于开发人员而言。

在应用中展示html或者远程网页,SliverLight for Windows Phone提供了一个叫WebBrowser的控件。在使用这个控件的过程中,发现了一个哭笑不得的问题:应用无法直接使用其内部的各类资源,无论是html还是图片,必须先得将这些复制到手机上,再从手机上读取后使用!天哪!亏WP7 SDK的开发人员想得出来,你看到这篇MSDN文章的时候一定会崩溃,不过我已经不是第一个遇到这种情况的人了

WebBrowser控件在默认的情况下,是不支持JavaScript的,若需要对其进行支持,需要设置其IsScriptEnabled为true,但要命的是,设置之后,只有在下一次打开页面的时候才会生效。

经测试,当html是从手机的独立存储中读取时,无论CSS是在手机内,还是在远程服务器上,均可正常支持。JavaScript同样如此。当html位于远程服务器中时,js可以是来自另外的远程服务器。

但致命的问题是,当WebBrowser控件中的内容有鼠标点击动作时,整个控件(还包括其它的输入性控件,如TextBox或者RadioButton)均有闪烁的情况!!这预示着大部分的html5游戏是没办法简单的移植了。

另外,对于WebBrowser中的内容,无法设置其x和y坐标,也无法设置其缩放比例!这点很是蛋疼。

看来,Android和iOS的确让Microsoft慌了手脚,NOKIA就不用说了。

给SidChen@Gmail.com主人的一封信!另:Google Accounts的安全性问题

Written by 不可能不确定 on June 11, 2011 Categories: 生活杂记  Tags: ,   Total 3,354 Views

前天的时候,想注册一下SidChen@Gmail.com这个账号,不出意外,也的确被人注册了,处于试一试的想法,点击了“Can’t Access you Account?”的连接,并使用安全问题的方式来找回密码,而没想到问题的答案是如此的简单,以至我一次就试出了密码。然后我非常不负责任的更改了密码和安全邮件地址。由于当时的疏忽,并没有记下安全邮件地址。

可以知道并且能够发布到这里的信息仅为:

一位姓陈的来自台湾的朋友,他拥有的另外一个邮件地址大致为b****4@ntu.edu.tw

先向这位朋友表示歉意,由于我的鲁莽给您带来了巨大的麻烦,如果您就是这位朋友,请您留下任何联系方式,或者邮件至ncbcyOK@Gmail.com,我将以最快的速度与您取得联系。您所有的邮件都仍然完好的保存在邮箱里,并且我没有打开任何邮件,这点您可以放心!为了安全,我修改了这个账号的安全提问。

另外的提醒是,如果您也是Google Accounts的用户,请您一定注意安全问题的设置,否则将可能给您带来同样的麻烦。虽然Google提供的二步登陆的确是超级安全,但可能绝大多数人不会去开启这个功能。单从账号的安全性和找回方式来讲,QQ可能是绝对的世界领先了。

再一次向这位朋友报以歉意!

 1 2 3 4 5 6 7 8 9 10 11 下一页

Switch to our mobile site