代码审计、渗透、编程三者的关系?

发布于 2017-02-09 17:26:56

代码审计、渗透、编程三者关系怎样?代码审计应该是要有编程能力。代码审计有助于渗透?没有渗透经验就玩代码审计,行的通不? 出于我没啥渗透经验,编程还行,想玩代码审计。求大牛们给建议啊!


查看更多

关注者
0
被浏览
3.8k
12 个回答
南殷
南殷 2017-01-18

  • 代码审计属于白盒测试,白盒测试因为可以直接从代码层次看漏洞,所以能够发现一些黑盒测试发现不了的漏洞,比如二次注入,反序列化,xml实体注入等。
  • 渗透测试是一种黑盒测试。测试人员在仅获得目标的IP地址或域名信息的情况下,完全模拟黑客使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。能够直观的让管理人员知道网络所面临的问题。

编程是这些所有的基础,除此之外代码审计会要求工程师有丰富的安全编码经验和技能。



cplus1999
cplus1999 2017-07-18

编程 更偏向于功能的代码实现。码农的职业和职责,编程更注重思路和方法的实现。
代码审计。 更偏向于代码的安全性和运行效率。
渗透。分为两种 不熟编程的渗透。(脚本小子。)
精通各种语言的高级渗透师。很强势


水蜜桃
水蜜桃 2017-06-23

编程是基础代码审计是白盒审计,其实也包括走码测试,但是实际更关注安全方面渗透则是黑盒攻击,web渗透网络渗透APP渗透,攻防是一起成长的,没有攻就没有防先好好编程,确保逻辑能力没问题,攻防一起关注,做一个懂安全的好的码农,然后才有渗透或审计的事情。你的情况,就像是爬还没爬稳在问跑,一步一步来审计这个行业,其实是合规性导向的,目前国内还不太成熟,事实上也有不懂开发的人在业内用工具用经验做成果的。如果想进入,希望不是半瓶水

不论是代码审计还是渗透测试,在一定程度来说都是需要编程能力和编程经验作为支撑,而编程又是以上所有工作的基础之一。

暖阳下的好日子
我要暖暖的幸福

代码审计属于白盒测试,渗透测试属于黑盒测试,但不无论哪种测试,面向的对象都是程序员开发的程序。如果你对代码一点不熟悉,那么很难在代码审计和渗透之中迅速找出问题;相反,如果你具有很丰富的编程经验,其实就很容易着找出整个系统中最为脆弱的部分。题主的目标是希望做代码审计,那么丰富的编码经验是必须具备的,至于渗透,在某些方面也确实是有助于代码审计的提升。

java小丑
java小丑 2017-05-23
暂时没什么可以说的

编程、运维能力是安全的基础,一个好的安全人员必定要懂编程和运维,特别是搞渗透的和搞代码审计的。

我们一起养条狗吧
细嗅蔷薇

我认为 编程是基础或者可以看成一个平台,代码审计和渗透(此处指黑盒)可以在此上面更好的进行,拥有更高的视角,看到更多的东西。

假设题中大多指web安全。那么一般常见的开发语言:PHP、Java、Python等。如果掌握其中一门语言,理解基础的语法和该语言的特点,也肯定会涉及到数据库相关内容,那么肯定会理解SQL的基础使用。也理解前端HTML&CSS等内容,了解整个web应用的架构是如何运行跑起来的,理解一个URL访问到显示整个页面这背后的机制。代码审计属于白盒审计,是从审查源代码出发,寻找漏洞。如果你拥有编程基础,那么你首先肯定可以阅读和理解代码,然后更重要的是,凭你的开发经验 可以猜测哪些地方可能存在bug导致漏洞的产生,然后再去一步一步审查每处可能的“突破口”。所以说 编程 是代码审计的基础。渗透我这里指黑盒测试,是先看到应用即页面效果,然后再去寻找漏洞。这样的情况下,如果你没有编程基础,不熟悉运行机制,不理解整个页面的web交互是如何进行的。那么你假如没有前辈留下的经验内容或网上的各种web常见漏洞整理等等,也许你真的是无从下手,因为你不明白它是什么。你不理解get和post的区别,不理解URL参数,不理解为何会发生SQL注入,不理解为何会产生xss等等 那何谈渗透。但是现在Web常见漏洞和利用方式都能很简单的获取到,所以或许你能利用渗透测试工具发现漏洞,但一个waf可能把你拒之门外。所以说 编程 是渗透的一个基础或平台。但是我不否认现在存在没有编程经验和能力的人,代码审计也能找出利用点甚至0day,黑盒测试也能发现漏洞。

龙卷风焦
龙卷风焦 2017-03-23
呼呼呼

编程相当于工地搬砖的代码审计相当于工地的监理渗透相当于扒手如果要做得好,最终都归一相同的原理。如果仅会编程,就是个码农,需要理解背后的技术原理,比如清楚SQL注入的原理,语句的拼接,参数的传递,知道为什么会产生SQL注入,就能有对应方法避免。那编程就能写出更安全的代码。同样的,理解背后的技术原理,别人写的代码不管用fortify工具还是肉眼看代码,你都能很快分析出代码是否有安全隐患,否则就只能用工具看工具的输出报告。同样的,理解背后的技术原理,渗透时就知道怎么确定这个点是不是注入点,找到点之后怎么快速的攻击,否则只就能照着书或攻略瞎试。

TaoZi
TaoZi 2017-07-23

看不出三者有什么关系。

生产环境中,渗透测试有三种:白、黑、灰盒。代码审计是白盒测试的一种方法。 狭义的渗透一般是指web渗透。 看题主也不像是对安全有兴趣的样子。还是好好编程吧。

七宝转出琉璃
七宝转出琉璃 2017-06-23
转啊转,转出一个琉璃

编程 更偏向于功能的代码实现。码农的职业和职责,编程更注重思路和方法的实现。 代码审计。 更偏向于代码的安全性和运行效率。

啥的健康恢复卡接收到回复
于是洛灵感焉

代码审计工具的实现都是基于代码审计经验开发出来的优化工作效率的工具,我们要学好代码审计就必须要熟悉代码审计的思路

撰写答案

请登录后再发布答案,点击登录

分享
好友

手机
浏览

扫码手机浏览