一、引子

一个Java应用的代码审计工作应该从哪里入手,对于新手来说也许会不知所措,如果在不了解整个应用系统情况下(包括业务功能、框架使用等)盲目的直接去阅读项目中源代码,往往会迷失在代码中导致漏洞误报漏报情况,审计效率同样不高。所以在审计之前要了解应用系统主要业务逻辑,其次是了解项目的结构和项目当中的类依赖。再次才是去根据业务模块去读对应的代码,从功能去关联业务代码往往比逮着段代码就看效率高很多。

目前企业中进行代码审计工作的系统有以下几类:网银系统、门户类网站(包括后台管理系统)、购物类网站等,针对这几类系统身份权限校验是都需要审计的机制,网银系统着重审计转账交易功能,门户类网站主要是后台管理系统。其次弄清楚当前源代码项目所采用的框架结构,比如SSH(Struts+Spring+Hibernate)、Spring MVC等,这里可以通过查看lib目录下所使用的第三方Jar包来判断使用的框架类型,struts2框架需要struts2-core-xxxx.jar提供核心包,spring框架需要spring-core-xxxx.jar提供核心包。根据项目中所引入的jar包来判断使用的框架类型是一种比较快捷的方式。如果想全面的了解此项目中具体的框架使用、过滤器、Servlet分布等情况,可以通过web.xml配置文件来查看,最后跟踪数据流来定位缺陷代码。

二、逆向回溯审计

逆向回溯审计针对于特定漏洞比较有效,因为大多数安全问题是由于函数使用不当造成的,比如命令注入通常会使用Runtime.getRuntime().exec(command)执行外部的程序或者命令,另外比如SQL注入可以直接搜索查看SQL语句是否使用字符串动态拼接。

“逆

代码审计--12--源代码审计思路(上)相关推荐

  1. php审计思路,PHP代码审计实战思路浅析

    原标题:PHP代码审计实战思路浅析 战略性的思考而非战术 对于面向过程写法的程序来说,最快的审计方法可能时直接丢seay审计系统里,但对于基于mvc模式的程序来说,你直接丢seay审计系统的话,那不是 ...

  2. 代码审计:审计思路之实例解说全文通读

    在我的新书 <代码审计:企业级web代码安全架构> 发布之际,借用这篇文章跟大家分享下代码审计的一些思路,目前该书已经可以在淘宝和京东等网站购买.本文章首发在freebuf. 根据敏感关键 ...

  3. linux添加审计账户_眼镜蛇W眼镜蛇白盒品白源代码审计工具 白帽子版

    写在最前,Cobra-W就像手中的一把剑,这把剑好不好用是Cobra-W的事,如何使用是你的事,希望能有更多的人参与到Cobra-W的变化中来...请使用python3.6 运行该工具,已停止维护py ...

  4. 菜鸟的源代码审计之路

    一.前言 源代码审计,顾名思义就是检查源代码中是否存在安全隐患,使用自动化工具以及人工的方式对源代码进行分析检查,发现源代码的这些缺陷引起的漏洞,并提供修复措施和建议. 在开始之前,我们先了解一下MV ...

  5. 【代码审计-PHP】审计方法、敏感函数、功能点

    前言: 介绍: 博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章). 殊荣:CSDN网络安全领域优质创作者,2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edus ...

  6. 【web源码-代码审计方法】审计技巧及审计工具

    目录 一.审计情况: 1.1.有源码: 1.2.有二进制程序: 1.3.有源码.二进制程序: 1.4.完全黑盒: 二.影响: 2.1.代码语言: 2.2.代码风格: 三.审计思路 3.1.敏感关键字回 ...

  7. 以太网控制芯片DM9000在2440裸机上终于能正确接收数据了(源代码工程已经上传)...

    以太网控制芯片DM9000在2440裸机上终于能正确接收数据了(源代码工程已经上传) (411.47 K) 该附件被下载次数 168 弄了几天DM9000了,一直不能正确接收数据,郁闷了几天,现在终于 ...

  8. php代码实现做网络安全的功能,基于PHP关键词审计技巧?网络安全源代码审计

    网络安全学习中,源代码审计是较为重要的一项.源代码审计分为白盒.黑盒.灰盒.审计方法也有多种.但是基于关键词审计技巧有什么?是很多人都想了解的. 以下是基于php审计关键词审计技巧总结: 在搜索时要注 ...

  9. 文件包含漏洞的审计(审计思路)

    一.文件包含漏洞的审计 考虑绕过,包含一个特殊的文件,构造一个压缩包 上传一个特殊文件 时间戳信息 几次尝试之后找到路径 用伪协议打开 伪图片的压缩包去读取内部的inc文件 回到网页去访问它 测试是否 ...

  10. 源代码审计之——工具源代码审计

    工具源代码审计 简单记一下,很多工具都是收费的,资料很少,今天安全开发生命周期学了一半存草稿了,明儿总结完一起发吧 最近都是偏理论的一些安全知识了,有一丶丶枯燥啦 Fortify 漏洞审计分析 主页面 ...

最新文章

  1. ETCD实现技术总结
  2. 实验二 初始化阶段-source.c
  3. 闲来无事,就把lnmp的php升级到php-5.2.17最新稳定版本
  4. 【Vue】class style:Vue中的两种样式处理方法
  5. 如何快速搭建yum源和成功检测第三方软件
  6. Unity NGUI 制作URL超链接点击打开网页
  7. CF1082E Increasing Frequency (multiset+乱搞+贪心)
  8. css/js在线压缩工具
  9. 让云触手可及——微软云计算解决方案白皮书
  10. 天翼校园客户端linux,GitHub - YianAndCode/f-surfing: 佛大广东天翼校园客户端在 Linux 下的解决方案...
  11. shell常见的语句结构_wuli大世界_新浪博客
  12. android 打印kernel log,Android native log输出为kernel log方法
  13. MP3音频解码详细过程(二)
  14. 炉石传说一直显示重新连接服务器,炉石传说一直显示战网开启中 炉石传说卡在启动战网解决办法...
  15. [转] 同期群分析Cohort Analysis
  16. 记录下载com.mysql.jdbc.Driver驱动包过程
  17. Python 常用标准库介绍
  18. 【covid-19】Inf-Net: Automatic COVID-19 Lung InfectionSegmentation from CT Images
  19. b和B的区别?大B与小b的区别(Bps与bps)以及b、B、KB、MB、TB、PB、EB的换算
  20. 快速生成树(RSTP)

热门文章

  1. 不给客户添麻烦的 阿拉丁
  2. 使用ajax模拟用户名是否被占用
  3. linux在vim中搜索文件,技术|超酷的 Vim 搜索技巧
  4. 嵌入式分享合集112
  5. mysql spring lobhandler_Spring让LOB数据操作变得简单易行
  6. 如何使用OBS Virtualcam 和 Live2DViewEX 在视频会议中成为最靓的仔
  7. 低代码开发专题月 | YonBuilder低代码开发平台,企业数智化转型的新动力
  8. 服务器繁忙 微信 苹果,iOS 9正式放出 服务器繁忙苹果推荐用户早晨更新
  9. IDEA配置文件乱码
  10. 信息学奥赛一本通(c++):1413:确定进制