1 最初的解决办法

admin 的头像
Submitted by admin on 星期六, 2015-09-19 01:22

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
但是项目中的实际问题,还是需要解决的。在实际的项目中,章林选择是用了form_alter来解决这个问题。Form_alter我们在前面,Think in Drupal第一集里面的第一章讲的就是这个钩子,它是非常有用的,在这里解决这个问题也是非常有效的。首先确定实体表单的ID,然后通过form_alter为这个表单添加一个验证回调函数,在自己的验证函数里面添加自己的逻辑。原有的代码已经找不到了,我在网络上找了段类似的代码,做了一下改造:

Drupal版本:

第9章 Field Validation的历程

admin 的头像
Submitted by admin on 星期六, 2015-09-19 01:20

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
我们第4集主要讲解开发与代码,当然很多代码是在前面的网上书店系统里面都用到的,部分代码是对网上书店原有功能的补充。此外,他不是一个严格意义上面的参考书,但是希望这份资料对大家仍然有用。

Drupal版本:

31 维护一个Drupal模块

admin 的头像
Submitted by admin on 星期六, 2015-09-19 01:19

者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
如果你创建了一个Drupal模块,想把它贡献到drupal.org的话,你首先需要申请一个账号,这个账号可以向GIT提交代码,这里是Drupal项目的Git,也就是以前的CSV账号。通常情况下,这个申请都是比较困难的,因为需要得到GIT管理员的批准,他们会对代码里面的问题提出很多的意见,让你修改,你可以按照他们的要求,来修改,直到账号批准下来。对于很多中文开发者来说,这个过程比较麻烦。还有一个办法就是,找一个拥有GIT账号的人,帮你创建这个项目,然后把代码提交上来,这个时候你可以申请成为项目的维护者,当你成为了一个项目的维护者的时候,自然就拥有了代码提交的权限。我就是通过后一种途径获得的CSV账号,现在升级成为GIT账号了。当然,你还可以创建一个沙盒项目,通过这种方式维护你的代码,但是沙盒项目里面有很多的限制。

Drupal版本:

30 文件安全

admin 的头像
Submitted by admin on 星期五, 2015-09-18 09:52

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
在以前,如果你把Drupal站点安装在了IIS上,由于Drupal没有提供IIS下面的配置文件,假定你又不熟悉IIS的配置的话,那么有可能其它用户能将你的module文件下载到本地。通过查看页面源代码,就能看到JS的路径信息,如果JS没有压缩,就可以推测出来module文件的所在,直接访问.module文件,便可以将其下载到本地。

Drupal版本:

29 权限和页面回调

admin 的头像
Submitted by admin on 星期五, 2015-09-18 09:50

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
在我们编写模块时,需要注意菜单项中'access callback'和’access arguments’键的使用。在前面SQL注入的例子中,我们是这样的写的:

Drupal版本:

28 信息泄露

admin 的头像
Submitted by admin on 星期五, 2015-09-18 09:48

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
信息泄露破坏了系统的保密性,它指信息被透漏给非授权的用户。这又分为多种情况。以前面sql注入的代码为例。

Drupal版本:

27 哈希长度扩展攻击

admin 的头像
Submitted by admin on 星期五, 2015-09-18 09:48

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
哈希算法有很多,我们以MD5为例。首先MD5算法会对消息进行分组,每组64字节,不足64字节的部分用padding补齐。padding的规则是,在最末一个字节之后补充0x80,其余的部分填充为0x00,padding最后的8字节用来表示需要哈希的消息长度。在对消息进行分组以及padding后,MD5算法开始依次对每组消息进行压缩,经过64轮数学变换。上一次压缩的结果,将作为下一次压缩的输入。

Drupal版本:

26 跨站点请求伪造(CSRF)

admin 的头像
Submitted by admin on 星期五, 2015-09-18 09:47

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
一个网站用户B可能正在浏览聊天论坛,而同时另一个用户A也在此论坛中,并且后者刚刚发布了一个具有B银行链接的图片消息。设想一下,A编写了一个在B的银行站点上进行取款的form提交的链接,并将此链接作为图片的src属性。如果B的银行在cookie中保存他的授权信息,并且此cookie没有过期,那么当B的浏览器尝试装载图片时,就会提交这个取款form和他的cookie,这样在没经B同意的情况下便授权了这次事务。

Drupal版本:

页面

Subscribe to Think in Drupal RSS