※ 引述《afgn (苏大宝)》之铭言:
: 如题,
: 我会PHP, 但又不想学框架(Zend、Symphony、CodeIgniter、Yii),
: 可以只用 PEAR 吗? 或是什么都不用? 直接用PHP的一些函数来避免
: SQJ Injection、XSS ?
: 有没有相关文件可以参考? 谢谢 ^_^
我是属于喜欢原生开发的那一派的
我不太喜欢用框架,会的框架也不多
但是,我会说,“资安”从来都不是用不用框架的理由
因为一个没有资安观念的人,不用框架只会更惨
而且,不用框架并不代表程式可以乱写
该做的检查还是要作
PHP函数并不会主动帮忙检查一些东西
要自己主动去叫他,这是很容易被忘掉的地方
不用框架的意义是,自己很明确知道自己要有哪些功能
以及知道这套系统未来可能遇到的变更等状况
以至于自己可以用最省事的方式去写一个简易形的框架出来
用简单一句成语来说,杀鸡焉用牛刀,就是这个道理
如果你要找文件的话
我只能说,这东西没文件,只能靠经验
或是从有系统性整理骇客手法的网站、书籍下手
挖漏洞这种事,需要一堆巧合,跟撰写程式方“连续的”不小心才有可能发生。
当然,对于找漏洞的人来说,知识跟经验也是必须要的
不然菊花大的漏洞摆在眼前,也发现不了
或是,发现了一个菊花大的漏洞的时候,也没办法把把他挖到像砂锅那么大
而且,这些漏洞的“罪”从来都跟使用的框架没有关系。
那些框架几乎都是开源程式码
也就是说,会有很多闲闲没事的人在挖框架的漏洞,以及提出、修改
漏洞的问题都出在“人”身上
我看过些状况是,框架明明就把保护措施弄的好好的
却有人硬是要直接用 + 号(php的话是.)去组SQL导致被入侵的状况
或是直接从网址上收到字串,就直接把那字串接到路径上
还用root下去跑web server
导致passwd档跟shadow被看光光的之类的
因为你在版上贴过禾联硕的征才资讯
我就去那个网站翻了一翻
http://www.heran.com.tw/
结果出现这个
http://i.imgur.com/HdTFcC8.jpg
像这种问题,大概就是收到参数没检查,直接用 + 号黏到SQL中会发生的状况
这看起来应该是SQJ Injection
那,发现SQJ Injection之后能干什么事情呢?
我看过书上是写说,基本的状况是把数据库的帐号密码、资历结构都挖出来
或是修改、拿到网站权限等等
如果数据库的权限没设好的话,那有可能从这边拿到root
不过我并不打算尝试,也没开挖这个漏洞,请你放心
但请你快点跟公司报告,并修好这个问题