2013-11-13 23:03 (分类:网络安全)

这篇流程写的非常细,思路上很完整很全面,非常值得参考,做渗透思路要非常清晰,要不然我感觉真的容易乱,或者漏掉一些可能存在的点。

1.渗透目标

渗透网站(这里指定为www.xxx.com

切记,在渗透之前要签订协议。

2.信息收集

建议手动检查和扫描器选择同时进行。

2.1 网站常规检测(手动)

1:浏览www.xxx.com

1.       初步确定网站的类型:例如银行,医院,政府等。

2.       查看网站功能模块,比如是否有论坛,邮箱等。

3.       重点记录网站所有的输入点(与数据库交互的页面),比如用户登录,用户注册,留言板等。

4.       重点查看网站是否用到了一些通用的模板,比如论坛选择了动网(dvbss),就有可能存在动网的漏洞;邮箱有可能选择通用的邮箱系统,也有漏洞。

2: 分析网站的url

1.     利用搜索引擎,搜索网站的url,快速找到网站的动态页面。

2.     对网站的域名进行反查,查看IP,确定服务器上的域名数,如果主页面url检测没有漏洞,可以对其他的域名进行检测。

3:审查代码

重点对输入代码(比如表单)进行分析,看如何来提交输入,客户端做了哪些输入的限制方法。

1.     隐藏表单字段 hidden

2.     Username,Password等

4:控件分析

Active x 通常都是用c/c++编写

在页面上(通常是首页)的源码中搜索

1. 需要ComRaider+OD 对dll文件进行反编译,看是否有漏洞。

2. 改变程序执行的路径,破坏Active X 实施的输入确认,看web的回应。

5:对常规的输入进行手动注入测试,测试是否有sql注入和跨站漏洞,试用常规的用户名和密码登录。

6:查看web服务器的版本,确定搜索是否有低版本服务器组件和框架的漏洞,比如通用的Java框架Struct2的漏洞。

2.2 工具选择和使用

1:web应用程序漏洞扫描工具

Appscan: (版本7.8)

扫描漏洞比较全,中文,漏洞利用率高,检测速度慢,需要大量内存,重点推荐。

AWVS:

英文,漏洞库完善,检测速度慢。

JSky

中文,检测速度快,但深度一般。

Nessus

英文,检测速度较快,漏洞也比较完善,免费,可及时更新,B/S界面。

2:端口扫描

Nmap

流光

3: 口令破解工具

溯雪

4:sql 注入工具

Asp+SqlServe, ACCESS:啊D注入工具

Php+MySQL : php+mysql注入工具(暗组的hacker栏中)

Jsp+ORACAL: CnsaferSI

支持以上数据库 Pangolin

5: http代理请求

Paros

6:木马

灰鸽子

7:提权木马

一句话木马+大马(具体所用的木马参考文档和工具包(绿盟,暗组))

5: 工具推荐使用方案

Appscan 扫描出的重大漏洞,进行手工检测(注意看漏洞是如何发现的,修改漏洞的代码,对渗透帮助很大)。

sql注入漏洞

可以选用根据网站类型选择sql注入工具

如果是post请求类型的url,选择使用paros代理后,修改http请求包,进行注入。

WebDEV漏洞

可以启用发送请求(比如DELETE对方网页)

跨站漏洞

直接将appscan的代码输入测试,成功后,可以尝试跨其他脚本(比如

遍历漏洞:

查看网页的目录,下载网站配置文件信息,和源文件进行反编译

反编译:

Class 可以选用java 反编译工具

Dll (asp.net) 选用Reflector

3.分析并渗透

(最好是由方案来组成)

web渗透步骤流程的更多相关文章

  1. Web渗透测试流程

    什么是渗透测试? 渗透测试 (penetration test)并没有一个标准的定义,国外一些安全组织达成共识的通用说法是:渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法 ...

  2. 2017-2018-2 20155303『网络对抗技术』Final:Web渗透获取WebShell权限

    2017-2018-2 『网络对抗技术』Final:Web渗透获取WebShell权限 --------CONTENTS-------- 一.Webshell原理 1.什么是WebShell 2.We ...

  3. KALI LINUX WEB 渗透测试视频教程—第十九课-METASPLOIT基础

    原文链接:Kali Linux Web渗透测试视频教程—第十九课-metasploit基础 文/玄魂 目录 Kali Linux Web 渗透测试视频教程—第十九课-metasploit基础..... ...

  4. Kali Linux Web 渗透测试— 第十二课-websploit

    Kali Linux Web 渗透测试— 第十二课-websploit 文/玄魂 目录 Kali Linux Web 渗透测试— 第十二课-websploit..................... ...

  5. Kali Linux Web 渗透测试视频教程— 第八课 nessus

    Kali Linux Web 渗透测试视频教程— 第八课 nessus 文/玄魂 视频课程地址:http://edu.51cto.com/course/course_id-1887.html 目录 n ...

  6. Kali Linux Web 渗透测试视频教程— 第七课 OpenVas

    Kali Linux Web 渗透测试视频教程— 第七课 OpenVas 文/玄魂 视频教程地址:http://edu.51cto.com/course/course_id-1887.html 目录 ...

  7. flask实战-留言板-Web程序开发流程

    Web程序开发流程 在实际的开发中,一个Web程序的开发过程要设计多个角色,比如客户(提出需求).项目经理(决定需求的实现方式).开发者(实现需求)等,在这里我们假设自己是一个人全职开发.一般来说一个 ...

  8. 小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)

    补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页 ...

  9. Spring Web MVC处理流程

    Spring Web MVC 处理流程: 1.浏览器向Spring发出请求,请求交给前端控制器 DispatcherServlet处理 2.控制器通过HandlerMapping找到相应的Contro ...

随机推荐

  1. C语言编译成dll

    首先c语言在开始要加上 #ifdef __cplusplus extern "C" { #endif …被导出的方法名称 #ifdef __cplusplus } #endif 不 ...

  2. 对标Eureka的AP一致性,Nacos如何实现Raft算法

    一.快速了解Raft算法 Raft 适用于一个管理日志一致性的协议,相比于 Paxos 协议 Raft 更易于理解和去实现它. 为了提高理解性,Raft 将一致性算法分为了几个部分,包括领导选取(le ...

  3. 【WPF on .NET Core 3.0】 Stylet演示项目 - 简易图书管理系统(4) - 图书列表界面

    在前三章中我们完成了登录窗口, 并掌握了使用Conductor来切换窗口, 但这些其实都是在为我们的系统打基础. 而本章中我们就要开始开发系统的核心功能, 即图书管理功能了. 通过本章, 我们会接触到 ...

  4. IO系统-基本知识

    注:本文档主要整理了Linux下IO系统的基本知识,是整理的网易云课堂的学习笔记,老师讲得很不错,链接如下:Linux IO系统 1.Linux操作系统的基本构成 内核:操作系统的核心,负责管理系统的 ...

  5. python实现数据结构-栈

    注:本文档主要是学习<Python核心编程(第二版)>时的练习题. 栈是一种"后进先出"的数据结构(LIFO),是一种操作受限的线性结构,数据只能从栈顶进入和栈顶出去. ...

  6. 对于kvm配置ssh

    首先我们要让自己的机器开启ssh服务 首先更新源 sudo apt-get update 安装ssh服务 sudo apt-get install openssh-server 检测是否已启动 ps ...

  7. Nginx搭建过程

    https://www.cnblogs.com/gscq073240/articles/6773000.html

  8. 在华为云上开启FTP服务并建立FTP站点来从本地向服务器发送和下载文件

    时间:2019/12/8 最近学习计算机网络的时候老师布置了一个实践作业,具体要求是两个人一组,一个在电脑上建立FTP站点,另一个开启FTP服务器来进行文件的上传和下载. 看到这个的时候我灵机一动,正 ...

  9. CUDA学习(七)之使用CUDA内置API计时

    问题:对于使用GPU计算时,都想知道kernel函数运行所耗费的时间,使用CUDA内置的API可以方便准确的获得kernel运行时间. 在CPU上,可以使用clock()函数和GetTickCount ...

  10. Linux用户在第一次登录时强制更改初始密码

    迫使用户更改密码 如果你想迫使用户更改其密码,请使用下面这个命令. $ sudo chage -d0 <user-name>   最初,“-d <N>”选项应该被设成密码的“有 ...