Security 问题
时间:2014-08-01
来源:互联网
唔用免费果 d 系统 (e.g. WordPress)
想问有 d 咩 Security 既问题要留意
净系识 SQL Injection 同 XSS Attack ...
仲有冇其他?
同埋用 PDO 系咪真系可以防到 SQL Injection?
作者: bbsocute 发布时间: 2014-08-01
目前网站漏洞大多以.SQL Injection, XSS Attack为主.
或者也去了解一下 csrf , 目录遍历等
另外服务器的安全也相当重要.
PDO是否能防御SQL Injection, 我相信不能呢.
还是做好基本SQL QUERY封装就是
作者: DevMark 发布时间: 2014-08-01

我睇过 stackoverflow d post 讲
PDO 果度用 bindParam 方法黎 query , 其实系咪咁已经可以?
作者: bbsocute 发布时间: 2014-08-01
作者: DevMark 发布时间: 2014-08-01
想试下由头到尾自己写一个系统出黎
唔用免费果 d 系统 (e.g. WordPress)
想问有 d 咩 Security 既问题要留意
净系识 SQL Injection 同 XSS Attack ...
仲有冇其他?
同埋用 PDO 系咪真系可以防到 SQL Inject ...
估计你主要都是用 MySQL ,那么选用 mysqli 可能好过 PDO :
http://www.php.net/manual/en/mysqlinfo.api.choosing.php
虽说 PDO 可以容许不同 database 系统共用一套 code ,但实际上每款 database 的 SQL statement 还是有点不同,真正使用时与分别选用专用 API 差不了多小。
如果自己有写 database 相关的 framework ,就不建议使用 PDO 。
因为可自己写 code 包住不同 API 的 code 。
PHP security 相关资讯: http://www.php.net/manual/en/security.php
大概网站的 security 要旨是要适当地检查/显示/使用来自使用者的 data ,并确保 data 来自真正的网站使用者。
小弟曾写过一套 framework ,或可供参考: https://code.google.com/p/myquicknet/
[ 本帖最后由 xianrenb 於 2014-7-10 01:42 PM 编辑 ]
作者: xianrenb 发布时间: 2014-08-01
关於 XSS Attack ... ( 其实我只系听过个名 , 但唔识点防

google 过 但唔系好明系点
我想问几时要加 htmlentities ?
我试自己写既网站
xxx.com/AAA.php?userid=123
咁我系后面加一段 alert script 落去啦
佢又唔 alert , 将果个 script print 出黎 show 系网站到 ...
即系点

作者: bbsocute 发布时间: 2014-08-01
又有问题
关於 XSS Attack ... ( 其实我只系听过个名 , 但唔识点防

google 过 但唔系好明系点
我想问几时要加 htmlentities ?
我试自己写既网站
xxx.com/AAA.php?userid=123
咁我系后面加一段 ...
以我的理解,某程度上其实即是要小心有可能在网页“显示” script tag 的情况。
方法有好多种,其中一个方法是用 DOM 加 text node ,应该几安全。
http://php.net/manual/en/book.dom.php
htmlentities 一类方法都得,不过较多问题。
有些程式在“文字”放进 database 前加,再取出时就直接显示。
有些程式在“文子”放进 database 前不变,再取出显示前才用。
运作上虽然最终结果一样,但后者会更安全。
理由是或许有某些情况 database 内的资料会被更改,可能被加进不应有的 script tag 。
取出后直接显示就有机会出问题。
而用 DOM 加 text node 的方法,加出来的一定是 text node ,不会是 script tag 加 JavaScript 的东西。
MyQuickNet 中有相关的 code/tools ,可以参考。
作者: xianrenb 发布时间: 2014-08-01
可以看看 http://en.wikipedia.org/wiki/Cross-site_scripting 。
以我的理解,某程度上其实即是要小心有可能在网页“显示” script tag 的情况。
方法有好多种,其中一个方法是用 DOM 加 text node ,应该几 ...

但我都想问问红字意思系咪即系唔可以放 <script> ... </script>
如果有就要做呢样野去防 -> http://php.net/manual/en/book.dom.php ?
因为我而家个网页有 <script> style.display ... </script> 既 code
作者: bbsocute 发布时间: 2014-08-01
thanks

但我都想问问红字意思系咪即系唔可以放 ...
如果有就要做呢样野去防 -> http://php.net/manual/en/book.dom.php ?
因为我而家个网页有 style.display ... 既 code
人们未有考虑 security 问题之前,如果写网页程式,要输入内容至网站的话,最简单的做法就是照样把资料写进 database ,取出来就直接显示。
这是因为 HTML 没有任何 tag 的话正常就是直接显示给使用者看。
但是黑客们就想到如果文字中有 script tag 的话,“文字”“显示”时就可以加入 script tag 或特别的 JavaScript code 让使用者的浏览器执行。
即是说,对於未有考虑 security 问题的程式员来说,相关代码的确是想显示文字的,但对於黑客来说,就变成可以加入/执行有害 JavaScript 代码。
故此,黑客可以利用表单、 cookie 、 URL 等等方式试图加入有害的 JavaScript code 。
要避免这个问题,只要小心处理要显示的资料及使用正确的显示方式。
例如“<”应变成“<”才加入 HTML 中。
DOM 加 text node 是我喜用的方法。
这种方法与 jQuery 处理 HTML 上资料的方式一致,可以清楚的把 HTML code 及 PHP 分开。
因为 DOM 可以把整个 HTML file 读入后才处理。
可以像 jQuery 般搜寻适当位置才加入资料。
至於你所说的网页上有其他 JavaScript code ,则应该与 XSS 问题无关。
作者: xianrenb 发布时间: 2014-08-01
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28