zoukankan      html  css  js  c++  java
  • 网络攻防第五周作业

    一、kali视频学习

    (一)、漏洞分析之数据库评估(一)

    WEB层与数据库连接的漏洞连接在安全测试中并不少见,OWASP中的SQL注入漏洞便是因此产生。下面对kali Linux对数据库评估工具的分类进行介绍。

    1.BBQSql(半自动)

    BBQSql是一个Python编写的盲注工具,当检测可疑的注入漏洞时会很有用,允许客户自定义参数。

    2.DBPwAudit(数据库用户名密码枚举工具)

    3.HexorBase(开源)图形化的密码破解与连接工具

    4.Jsql Injection

    Jsql是一款轻量级安全测试工具,可以检测SQL注入漏洞。它跨平台(windows,linux,Mac OSX,Solaris)/开源且免费。将存在注入漏洞的URL贴进来就可以进行相应的漏洞利用;图形化界面比较亲民,但使用效果有待改善。

    5.MDBTools

    包括MDB-Exprot,以及MDB-Dump, mdb-parsecsv,mdb-sql,mdb-tables等子工具,具体环境具体使用。

    6.Oracle Scanner

    Oscanner是一个用java开发的Oracle评估工具,它是基于插件的结果,当前由两个插件可以做:

    7.SIDGusser

    同样是针对Oracle的SID进行暴力枚举工具,SID为Oracle实例名,Oracle连接字符串,通过实例名+用户+密码连接。

     

    8.SqIDICT 用户名枚举工具,通过Wine运行

    (二)kali漏洞分析之数据库评估二

    1.tnscmd10g

    允许向Oracle注入命令

    2.Sqlsus

      Sqlsus是一个开源的MYSQL注入和接管工具,Sqlsus使用perl编写,基于命令行界面,可以获取数据库结构,注入自己的SQL语句,从服务区下载文件,爬行web站点可写目录,上传和控制后门,克隆数据库等等。最好用的两点就是注射获取数据速度非常快,可自动搜索可写目录。

    可以看到Sqlsus中只有四个参数命令,要注入语句,首先-g生成一个文件,进行编辑,在文件中标红的框内插入想要测试的语句,写入地址。

    启动并测试命令:sqlsus test.conf
    获取数据库数据
    查看全部数据库名字:sqlsus> get databases
    设定数据库: sqlsus> set databases
    获取表: sqlsus> get tables

    3.Sqlninja(sql注入的神器)

      Sqlninja是一款perl编写的,侧重于获得一个shell。Sqlninja是专门针对Microsoft SQLServer的sql注入工具。可找到远程SQL服务器的版本和特征;对管理员口令“sa”进行强力攻击;一旦找到口令就将特权提升到“sa”权限;如果原始的xp_cmdshell被禁用后,就创建一个定制的xp_cmdshell;不需要FTP连接;为了找到目标网络的防火墙所允许的端口,可以实施针对目标SQL服务器的TCP/UDP端口扫描;逃避技术,使注入代码“模糊”不清,并且混淆/绕过基于强命的IPS和应用层防火墙;采用“盲目执行”攻击模式,可以用于发布命令并执行诊断;如果得到权限为sa,可以结合msf进一步对目标主机进行渗透。

    4.Sqlmap

      SQLMAP是一个开源的渗透测试工具,是用Python编写。主要用于自动化的侦测和实施SQL注入攻击以及渗透数据库服务器。配有强大的侦测引擎,适用于高级渗透测试用户,不仅可以获得不同的数据库指纹信息,还可以从数据库中提取数据,有很强大的抓取数据的能力。

    (三)kali漏洞分析之Web应用代理

    1.Burp Suite

    是用于攻击web应用程序集成平台。通过默认端口8080上运行,使用这个代理,可以截获客户端到web应用程序的数据包。

    打开后发现有很多标签页:

    Proxy代理模块作为BurpSuite的核心功能,拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流。首先建立代理监听(Proxy–> Options功能下),可以看到默认值127.0.0.1,端口8080(可以点击Edit进行修改,或者添加新的监听端口)。然后打开浏览器,点击Preferences->Privacy->Advanced->Network->Settings,设置HTTP代理和端口。

     

    这时我们访问一个地址,比如百度,发现并不能马上打开一个界面,此时Burp Suite多了一个get请求:

     点击forward,这时百度页面打开:

    当利用百度查询信息时,发现Burp Suite多了几个get请求,如果将其撤回,那么页面出错:

    2.OwaspZAP

    攻击代理,是一款查找网页的应用程序漏洞综合渗透测试工具。包含拦截代理,被动处理,暴力破解,端口扫描,以及蜘蛛搜索等功能。页面中的中文标签比较亲民:

    3.paros

      paros proxy,这是一个对Web应用程序的漏洞进行评估的代理程序,基于Java的Web代理程序,可评估Web应用程序的漏洞。它支持动态的编辑/查看 HTTP/HTTPS,从而改变cookies和表单字段等项目。它包括一个Web通信记录程序,Web圈套程序(spider),hash计算器,还有一个可以测试常见的Web应用程序攻击(如SQL注入式攻击和跨站脚本攻击)的扫描器。该工具检查漏洞形式包括:SQL注入、跨站脚本攻击、目录遍历等。

    4.vega扫描漏洞及代理

      这是一个开源的web应用程序安全测试平台,vega能够帮助你验证SQL注入、跨站脚本(XSS)、敏感信息泄露和其他一些安全漏洞。vega使用java编写,有GUI,可以在Linux、OS X和windows下运行。vega类似于paros proxy、 Fiddler、skipfish and ZAproxy

     

    5. WebScarab

      这是一款代理软件,包括HTTP代理,网络爬行、网络蜘蛛,会话ID分析,自动脚本借口,模糊测试工具,WEB格式的编码/解码,WEB服务描述语言和SOAP解析器等功能模块。WebScarab基于GNU协议,使用Java编写,是WebGoat中所使用的工具之一。

    端口监听:

    (四)kali漏洞分析之BurpSuite

           Burp Suite是一个Web应用程序集成攻击平台,它包含了一系列burp工具,这些工具之间有大虽接口可以互相通信,这样设计的目的是为了促进和提高整个攻击的效率。平台中所有工具共享同一 robust 框架,以便统一处理HTTP请求,持久性,认证,上游代理,日志记录,报帑和可扩展性。Burp Suite 允许攻击者结合手工和自动技术去枚举、分析、攻击Web应用程序。这些不冋的burp工具通过协同工作,有效的分享信息,支持以某种工具中的信息为基础供另一种工具使用的方式发起攻击。

    • Proxy提供一个直观、友好的用户界面,它的代理服务器包含非常详细的拦截规则,井
      能准确分析HTTP消息的结构与内容

    • Spide爬行蜘蛛工具可以用来抓取目标网站,以显示网站的内容,基本结构和其他功能

    当浏览Web应用时,spider会从HTML响应内容中主动生成一份URL列表,然后尝试连接URL。首先点击Target–> Site Map标签,然后右键域名,选择“Add To Scope”:

    • Repeater 可手动重新发送单个HTTP请求
    • Intruder 是burp套件的优势,提供一组特别有用的功能。它可以自动实施各种定制攻击,包括资源枚举、数据提収、模糊测试等常见漏洞等。在各种有效的扫描工具中,它能
      够以最细化、最简单的方式访问它生产的请求与响应,允许组合利用个人智能与该工具的控
      制优点。
    • Sequencer 对会话令牌,会话标识符或其他出于安全原因需要随机产生的键值的可预测
      性进行分析。
    • Decoder 转化成规范的形式编码数据,或转化成各种形式编码和散列的原始数据。它能
      够智能识別多种编码格式,使用启发式技术。
    • Comparer 执行比较数据之间的任何两个项目(一个可视化的“差
      异”)。在攻击一个Web应用程序的情况下,这一要求通常会出现当你想快速识别两个应用
      程序的响应之间的差异(例如,入侵者攻击的过程中收到的两种反应之间之间,或登录失败
      的反应使用有效的和无效的用户名)之间,或两个应用程序诘求(例如,确定不同的行为引
      起不同的请求参数)

    (五)kali漏洞分析之Fuzz工具

    1.Bed.pl

      Bed是一个纯文本协议的Fuzz工具,能够检查常见的漏洞,如缓冲区溢出,格式串漏洞,整数溢出等。
    可以针对不同的协议使用不同的插件
    -s 针对FTP协议,FTP参数
    -t 目标IP地址
    -p 目标端口
    -o timeout
    发送一连串畸形数据包,尝试使程序报错,进行判断。

    2.Fuzz_ipv6

    THC出品的针对IPV6协议的模糊测试工具

    3.0hrwurm(RTP fuzzer)(不常用)

    4.PowerFuzzer

    5.Wfuzz

      针对WEB应用的模糊测试工具,可以进行web应用暴力猜解,也支持对网站目录、登录信息、应用资源文件等的暴力猜解,还可以进行get及post参数的猜解,sql注入、xss漏洞的测试等。所有功能依赖于字典。
    登录get请求,登录页面口令猜解,忽略404页面
    使用参数如:

    wfuzz -c -z file,users.txt -z file,pass.txt -hc 404 http://www.site.com/log.asp?user=FUZZ&pass=FUZZ

    页面数目猜解
    wfuzz -c -z range,1-10 --hc=BBB http://www.site.com/FUZZ{something}
    与BurpSuite相比更轻量

    6.SFuzz:Simple-Fuzzer

    7.XSSer

    针对XSS漏洞的挖掘
    xsser --gtk 图形化界面
    对一个页面或点进行xss测试,判断是否有XSS的漏洞

    二、教材学习总结

    1.Web应用程序安全攻防

    1.1 web应用体系结构及其安全威胁

    • web应用体系结构

    “瘦”客户端:浏览器,完成数据显示与展示内容的渲染功能;

    “胖”服务器:web服务器软件、web应用程序、后端数据库。

    通过经典三层架构:表示层、业务逻辑层和数据层来组织和构建。

    传输协议HTTP/HTTPS:

    1)超文本传输协议HTTP无状态、ASCII码明文传输、运行于众所周知的TCP80端口。特点:简单、流行、易受攻击。

    2)加密传输的HTTPS协议,使用ssl/tls隧道技术,采用多种认证协议实现对用户身份的人认证与控制。

    web应用安全威胁:

    1)针对浏览器和终端用户的web浏览安全威胁:以浏览器渗透攻击为核心的网页木马、网站钓鱼。
    2)针对传输网络的网络协议安全威胁:针对HTTP明文传输的敏感信息监听、假冒身份攻击、拒绝服务攻击等。
    3)系统层安全威胁:远程渗透攻击和本地渗透攻击温威胁。
    4)web服务器软件安全威胁:利用漏洞实施渗透攻击、获取敏感信息。
    5)web数据安全威胁:窃取、篡改、输入不良信息。

    1.2 Web应用程序安全攻防技术概述

    信息收集内容包括:

    服务器域名
      ip地址和虚拟ip地址
      web服务器端口与其他开放服务
      web站点类型和版本
      web应用程序类型和版本
      web服务器和web应用程序中存在的安全漏洞信息

    方式包括:

    手工审查web应用程序结构与源代码
      自动下载与镜像web站点页面:lynx、wget、teleportpro、offline explorer等web站点镜像软件。
      使用google hacking技术审查与探测web应用程序
      web应用程序安全评估与漏洞探测:浏览器插件、免费工具集、商业web应用安全评估系统和漏洞扫描器。

    1.3 SQL注入

    本节讲了什么是SQL注入、种类以及原理(课本举了两个例子进行说明):

    利用web应用程序的输入验证不完善漏洞,使得web应用程序执行由攻击者所注入的恶意指令和代码,造成敏感信息泄露、权限提升或对系统的未授权访问等危害后果。

    SQL注入攻击步骤:

        发现SQL注入点
        判断后台数据库类型
        后台数据库中管理员用户口令字猜解
        上传ASP后门,得到默认账户权限
        本地权限提升
        利用数据库扩展存储过程执行Shell命令

    SQL注入攻击工具:

        Wposion 能在动态web文档中找出SQL注入漏洞
        wieliekoek.pl 以网站镜像工具生成的输入为输出,对表单页面注入字符串修改
        SPIKE Proxy 对待注入的字符串进行定制
        SPI Toolkit工具包

    SQL注入攻击防范:

        使用类型安全的参数编码机制
        完备检查来自外部的用户输入
        将动态SQL语句替换为存储过程、预编译SQL或ADO命令对象
        加强SQL数据库服务器的配置与连接

    1.4 XSS跨站脚本攻击

    与代码注入攻击不同的是,XSS跨站脚本攻击的最终目标不是提供服务的web应用程序,而是使用web应用程序的用户。

    • XSS攻击技术原理

    是Web应用程序对用户数输入内容的安全验证与过滤不完善。

    • 攻击方式

    绕过客户端安全策略访问敏感信息,窃取或修改会话Cookie、进行客户端渗透攻击获取访问权。

    • XSS攻击类型

    持久性XSS漏洞和非持久性XSS漏洞,利用这两类漏洞的攻击也称为持久性XSS攻击和非持久性XSS攻击。

    攻击实例:测试XSS漏洞、显示用户的会话cookie、窃取用户的会话cookie、利用cookie信息假冒其他用户发表与修改帖子、编写实现XSS蠕虫。

    • XSS攻击防范措施

    服务器端:输入验证、输出净化、消除危险的输入点。

    客户端:提升浏览器的安全设置,如关闭cookie或者设置cookie只读等,也可以采用非主流的安全浏览器。

    2.Web浏览器安全攻防

    2.1 web浏览器安全威胁

    • Web浏览器软件安全困境三要素:复杂性、可扩展性、连通性。

    • Web安全威胁位置

    2.2 Web浏览端渗透攻击威胁——网页木马

    • 本质核心:利用脚本语言实现对web浏览端软件安全漏洞的渗透攻击,从而向客户端主机中植入恶意程序。
    • 防范:提升操作系统与浏览端平台软件的安全性。

       

    2.3 网络钓鱼(phishing)

    网络钓鱼是社会工程学在互联网中广泛实施的一种典型攻击方式。

    • 原理:通过大量发送声称来自于银行或其他知名机构的欺骗性垃圾邮件,意图引诱收信人给出个人敏感信息。

    • 普遍技术流程:

     攻击者扫描网段,寻找存有漏洞的服务器;
     服务器被攻陷,并被安装一个rootkit或口令保护的后门工具;
     攻击者从加密的后门工具获得对服务器的访问权,并下载已经构建完毕的钓鱼网站内容,进行一些网站搭建配置与测试工作,使得钓鱼网站上线运行;
     攻击者下载群发电子邮件工具,并大规模散发垃圾邮件;
     网页浏览的流量开始到达钓鱼网站,受害者访问并给出个人敏感信息,攻击者通过后台脚本收集这些信息。

  • 相关阅读:
    [APUE]第十章 信号
    [APUE]第十一章 线程
    android 音乐播放器中播放模式的设计
    php socket 发送HTTP请求 POST json
    php 扫描url死链接 \033[31m ANSI Linux终端输出带颜色
    Redis学习——Redis持久化之RDB备份方式保存数据
    exit与return的区别
    MQ入门总结(一)消息队列概念和使用场景
    微软放缓.NET动态语言开发计划,徐汇区网站设计 狼人:
    构建高性能ASP.NET站点 网站优化需要考虑的方面,徐汇区网站设计 狼人:
  • 原文地址:https://www.cnblogs.com/sghy0021/p/10631671.html
Copyright © 2011-2022 走看看