WEB 源码在安全测试中是非常重要的信息来源,可以用来代码审计漏洞也可以用来做信息突破口,其中 WEB 源码有很多技术需要简明分析。

知识点

关于 WEB 源码目录结构

后台目录、模板目录、数据库目录、数据库配置文件 等

关于 WEB 源码脚本类型

ASP PHP ASPX JSP JAVAWEB Python etc

不同脚本的源码数据库储存方式不同

不同脚本有解释型 有编译型

语言安全:不同脚本语言涉及到的安全漏洞不同

关于 WEB 源码应用分类

门户、电商、论坛、博客、第三方 等

源码功能决定漏洞类型

判断源码功能后,可以找到侧重探索的漏洞类型

关于 WEB 源码其他补充

框架非框架:框架就是常用功能集成,网站开发时可直接引用功能

如果对方网站采用框架开发,那么就需要针对框架找漏洞

如果是非框架开发,那么需要一行行代码找漏洞

CMS识别:判定一个网站是采用什么程序搭建的,根据框架可能能找到别人分析的漏洞进行测试

开源或内部

开源:能知道这套程序的名字, 能下载到源码 可以直接找漏洞或审计

内部:未见过的程序,找不到源码 可以进行常规渗透测试

源码获取:扫描/探测获取备份文件,CMS识别后获取,特定源码特定渠道

展示

数据库配置文件,后台目录,模版目录,数据库目录等

打开网站源码文件

通过后缀判定php

知晓常规漏洞的含义

admin/system 网站后台操作

data 数据相关

member 会员的

template 模板文件目录

includes/config 数据库配置文件 网站和数据库相连接的文件

ASP,PHP,ASPX,JSP,JAVAWEB等脚本类型源码安全问题

https://websec.readthedocs.io/zh/latest/index.html

不同脚本对应的可能漏洞不同

  1. MetInfo 网站

    网址中即夹杂php 发现时php的

    可以直接在网上搜索MetInfo 漏洞 或下载MetInfo源码 查找漏洞

    目前仅强调思路
社交,论坛,门户,第三方,博客等不同的代码机制对应漏洞

通过目标的应用方向,可以知道应该着重哪些漏洞的发现/测试

开源,未开源问题,框架非框架问题,关于cMS识别问题及后续等

同上

关于源码获取的相关途径:搜索,咸鱼淘宝,第三方源码站,各种行业对应

总结:

关注应用分类及脚本类型估摸出可能存在的漏洞(其中框架类例外),在获取源码后可进行本地安全测试或代码审计,也可以分析其目录工作原理(数据库备份,bak文件等),未获取到的源码采用各种方法想办法获取!、

第三方网站 菜鸟源码

演示案例

  1. 打开靶机 xx搬家公司网站

    发现xycms

    网上查找xycms源码 下载查看

    mdb文件是ASP特有的数据库文件

    xydata中发现的mdb文件 中有admin 账号密码 MD5加密的 解密后即能登录

    可以尝试访问网站中xydata/xscms.mdb
  2. CMS字典

    查看MD5值 对比字典库数据

    网上CMS识别网站 云悉 站长之家
  3. 电商网站niushop

    提交订单后

    burpsuip 抓捕数据包 将订单数量更改为-1 再发送

    则需要支付的金额变为0

    电商网站的功能测试重点 支付漏洞

简要目标从识别到源码获取

本地演示个人博客-手工发现其CMS-漏洞搜索或下载分析

http://weipan.1016sangshen.cn/ 内部搭建的靶场

人工爆框架-搜索特定url-获取其他相符站点-漏洞测试

借助特定行业源码或咸鱼进行搜索获取-本地搭建-代码审计或其他

程序源码获取

菜鸟源码(网站现在已经打不开了 小道消息说是站长被抓了xs

网页搜索

最新文章

  1. 剖析AngularJS作用域
  2. R语言内存管理
  3. [Java入门笔记] Java语言基础(五):数组
  4. python解析robot framework的output.xml,并生成html
  5. web 前端常用组件【03】Bootstrap Multiselect
  6. C++函数传递指针面试题
  7. Js表单Submit问题
  8. thrift demo
  9. PIL 安装
  10. DataReader反射泛型对象
  11. lucene建立索引的过程
  12. Android Studio之同一窗口打开项目
  13. 获取Camera 支持视频的尺寸
  14. C++中模板Template的使用
  15. localStorage和sessionStorage总结以及区别
  16. C++系列总结——继承
  17. 爬虫之requests模块
  18. 2018-4-5-cadence skill
  19. linux操作命令之帮助命令
  20. Mongo数据库操作/数据库版本号

热门文章

  1. day12_内部类&API
  2. js - 解决微信环境下,ios软键盘收起后页面空白
  3. Centos 6.5 iptables 端口白名单设置
  4. python命令行开发--click
  5. Advanced Rest Client 测试工具安装
  6. word生成产生错误的原因
  7. C# 读取串口设备列表
  8. js原生判断数字类型
  9. vue2 less的下载配置
  10. 冒泡排序快速排序C语言