一名代码审计新手的实战阅历与感悟

一名代码审计新手的实战阅历与感悟blueCMS介绍
个人认为,作为一个要入门代码审计的人,审计流程应该从简略到困难,逐渐提高。因而我主张咱们的审计流程为——DVWA——blueCMS——其他小众CMS——结构。一起做总结

blueCMS介绍
个人认为,作为一个要入门代码审计的人,审计流程应该从简略到困难,逐渐提高。因而我主张咱们的审计流程为——DVWA——blueCMS——其他小众CMS——结构。一起做总结,搞清楚缝隙原理。好,...

blueCMS介绍
个人认为,作为一个要入门代码审计的人,审计流程应该从简略到困难,逐渐提高。因而我主张咱们的审计流程为——DVWA——blueCMS——其他小众CMS——结构。一起做总结,搞清楚缝隙原理。好,进入正文!
blueCMS是一款小众的CMS,在2012年左右的时分,就有人发布其相关缝隙。但是,我个人感觉用blueCMS进行新手实战代码审计入门,是一个十分不错的挑选。而我在进行blueCMS审计之前,网上也搜索了blueCMS的审计文章。那些文章或许都是你转过来,我转过去的,一般都是文章中只提到了两个缝隙,一个是坐落根目录下的ad_js.php文件中,存在sql注入。

另一个便是,在common.fun.php中,自定义函数getip()能够假造IP地址,形成注入。
而我,作为一个新手,很清楚新手在初学代码审计的时分,会遇到什么样的困惑,因而,决议花一些时刻,仔细记载下自己实战进程中的所见所闻所想,以及处理思路的办法。争取给新手一个十分全面的学习进程。
环境预备
BlueCMS v1.6 sp1
phpstudy  php5.4.45+apache+mysql
操作系统 WIN7 64位 专业版
BlueCMS资源在i春秋上有一篇文章,上面有下载地址。其他的文章中呈现的东西自己完全能够独立处理。因而文章中不再胪陈这部分内容。若不会建立本地网站环境,百度一下即可。
开端实战!
代码审计有好几种办法,有人习气于追寻数据流,有人习气追寻风险函数,然后回溯。有人喜爱按功用点来进行审计。当然也有人直接通读全文。
我作为一个新手,按道理讲最好通读全文,了解架构。但是,我发现我的性情和习气,更倾向于追寻数据流。俗话说,合适自己的才是最好的。因而,作为新手,读者应当结合自己的习气,去进行代码审计。
我之所以挑选追寻数据流,一方面是个人习气,另一方面是因为余弦大佬从前说过,web安全要点就三个词——“输入”,“输出”,“数据流”。
虽然我是追寻数据流,但是根本的网站结构该看仍是要看的。因而,我做的榜首件事,便是简略阅读网站目录结构。

实际上,许多情况下,依据命名,就能够猜出来这部分的文件详细是干嘛的了。比方admin文件夹,那么里边的文件必定是和管理员的操作有关。include文件夹,里边必定包含了一些常用的函数文件。
简略看完目录后,我会看主页的index.php,在看这个文件的一起,我还会翻开它的网页,做到一边看代码,一边看网页的作用。这种办法能够让咱们这些对代码不了解的新手脑海中能够构建相应的情形图。今后即便做浸透,也不会不知所措。
接着,我会翻开主页index.php,“装腔作势”的阅读一番。实际上,我也便是看看里边的注释算了。。。。。因为在Index.php里边,往往不需要获取用户输入。之所以看它,是想知道在这个主页上,会引证哪些操作文件,一个网站的大约姿态是啥姿态。

比方说blueCMS中,依据主页,我就猜想,假如将一些xss句子存到数据库,那么他主页显现的时分,是不是就会有存储型xss呢?别的,主页还引入了一些文件,但是,我个人是没有去看的。个人习气吧,虽然那本《代码审计:企业级web安全》中,主张咱们是看看常用函数库文件,看看装备文件的。不过,我自己更喜爱在用到相关函数、相关装备的时分再去检查。
接下来,有两种审计思路,一种是经过点击网页,看网页怎么跳转,来追寻审计。比方下面这幅图:

我一旦点击主页上的登录按钮,那么我就会跳转到user.php中,履行act=index_login的操作。那么这时分,你就能够翻开相关的文件,检查该操作是怎么进行的即可。

能够看到,先是获取了用户的输入,然后有的当地过滤了,有的当地没有。实际上,这儿咋一看是如同存在缝隙,但是,当你仔细看的时分,就会发现UC_API,而且引证了client.php中的函数。能够这么说,因为我没有网站开发才干,导致我在看client.php中的一些函数时,是看不懂的。就比方下面这个,即便我知道是将那些参数全都传入UC_API_FUNC中,但是仍旧不清楚回来值是什么类型。

“当你遇到问题的时分,便是你生长的关键”我十分喜爱这句话。同理,咱们都是新手,初学代码审计,必定许多东西看不懂。怎么办?这个问题会将一大批想学代码审计又没有开发布景的人刷下去。咱们唯有硬啃,把这硬骨头啃碎了,才干继续下去,不然代码会读的昏昏沉沉。所以我经过搜索引擎查阅UC_API_FUNC知道,这个玩意儿是判别用户提交信息是否正确,然后回来正确情况下的uid。知道这个,现在来说,就够了。没必要再深入了。

[1] [2] [3] [4]  黑客接单网

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/7459.html

(0)

相关推荐