• 《网络攻防》第11周作业


    20169310 2016-2017-2 《网络攻防实践》第11周学习总结

    实验一 TCP/IP攻防实验

    之前也做过类似实验,可参见《网络攻防》第6周作业
    实验环境选用: 主机A:Metasploitable ubuntu(192.168.37.130);主机B:XP(192.168.37.160);主机C:Seed(192.168.37.180)
    AB之间进行正常通信,C作为攻击机

    1.ARP欺骗

    主机A通过ping其他主机,可以得到一个路由信息表:


    通过此表,保存了IP地址与对应MAC之间的映射关系,而ARP欺骗就是改变这个表当中的映射关系,以达到欺骗的目的。
    这里选用 netwox 工具进行操作,在主机C当中执行以下命令:


    这样,我们再去查看主机A的路由信息:


    可以发现,信息表中关于主机B的IP地址所对应的MAC地址已经被改成了C的MAC地址,这样A发往B的数据就会被错误指向C了。

    2.SYN FLOOD攻击

    使用主机C对A实施攻击,其原理在于C向A发送大量半连接的TCP请求,会填满A的网络缓存队列,导致A不再相应正常请求,已达到A网络服务瘫痪的目的。
    使用如下命令:


    同时,可利用Wireshark工具抓取数据包查看:


    确实如我们预想的那样,C向A发送了大量的TCP数据包。

    实验二 SQL注入

    主要通过实验楼Collabtive系统SQL注入实验课程,学习如何进行SQL注入。

    一、实验简介

    SQL注入技术是利用web应用程序和数据库服务器之间的接口,把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。
    SQL注入会带来:
    1.非法读取、篡改、添加、删除数据库中的数据。
    2.盗取用户的各类敏感信息,获取利益。
    3.通过修改数据库来修改网页上的内容。
    4.私自添加或删除账号。
    5.注入木马等等。

    二、实验步骤

    实验所用的web应用程序称为Collabtive,禁用Collabtive的若干防护措施,创建了一个容易受到SQL注入攻击的Collabtive版本。
    首先可按照实验文档进行环境配置:

    1.select语句的SQL注入

    打开登录验证文件:

    sudo vim /var/www/SQL/Collabtive/include/class.user.php
    

    在375行处,更改为:

    $sel1 = mysql_query ("SELECT ID, name, locale, lastlogin, gender, FROM user WHERE (name = '$user ') #' OR email = '$user') AND pass = '$pass'");
    

    然后重启服务器后,打开登录界面,输入 admin')# ,即可绕过密码登录:


    2.update语句的SQL注入

    在登录验证文件当中,如下位置:

     function edit($id, $name, $realname, $email, $tel1, $tel2, $company,
                  $zip, $gender, $url, $address1, $address2, $state,
                  $country, $tags, $locale, $avatar = "", $rate = 0.0)
        {
        $name = mysql_real_escape_string($name);
        $realname = mysql_real_escape_string($realname);
    
        //modified for SQL Lab
        //$company = mysql_real_escape_string($company);
        $email = mysql_real_escape_string($email);
    
        // further escaped parameters removed for brevity...
    
        $rate = (float) $rate;
        $id = (int) $id;
    
        if ($avatar != "")
            {
                $upd = mysql_query("UPDATE user SET name='$name', email='$email',
                                    tel1='$tel1', tel2='$tel2', company='$company',
                                    zip='$zip', gender='$gender', url='$url',
                                    adress='$address1', adress2='$address2',
                                    state='$state', country='$country',
                                    tags='$tags', locale='$locale',
                                    avatar='$avatar', rate='$rate' WHERE ID = $id");
            }
        else
            {
                // same query as above minus setting avatar; removed for
                // brevity
            }
        if ($upd)
            {
                $this->mylog->add($name, 'user', 2, 0);
                return true;
            }
        else
            {
                return false;
            }
        }
    

    我们会发现​sql语句为:SELECT ID WHERE name=​'$user',并且company的位置是存在注入漏洞。
    所以,我们以用户名bob,密码bob登录系统,在用户编辑界面修改信息并保存:
    company处填写:

    ', `pass` = '9d4e1e23bd5b727046a9e3b4b7db57bd8d6ee684' WHERE ID = 4 # '
    其中,这一串数字是pass的md5值
    


    这样,就拥有了一个名为ted,密码为pass的新账号,可以通过登录进行测试:


    可以看到,ted用户登录成功。

    面对这些潜在的SQL注入漏洞,可通过默认开启 magic_quotes_gpc 来防御转义特殊字符的使用、避免使用特殊字符、使数据与sql语句分离等方法进行防御。

    感想体会

    经过本周的学习,主要学习了SQL注入的攻击实现方法,这个方法之前也接触过,此次算是再一次加深了对这个漏洞攻击的理解。

    学习进度条

    学习目标(本学期)

    完成网络攻防课程的学习,完成各种攻防实践操作。

    本周完成内容

    完成TCP/IP攻防实验与SQL注入实验。

    周次 教材学习 视频学习(新增/累计) 博客(新增/累计)
    第1周 (实验楼学习) (实验楼学习) 1/1
    第2周 第1、2章 5/5 1/2
    第3周 第3章 5/10 2/4
    第4周 第4章 5/15 1/5
    第5周 第11、12章 5/20 1/6
    第6周 第5、6章 5/25 1/7
    第7周 第7章 5/30 1/8
    第8周 第8章 5/35 1/9
    第9周 第9、10章 3/38 1/10
    第10周 (实验楼学习) (实验楼学习) 1/11
    第11周 (实验楼学习) (实验楼学习) 1/12

    参考资料

    1.Collabtive系统SQL注入实验

  • 相关阅读:
    跨域 反向解析
    人工智能-邮箱验证
    人工智能-Selenium
    人工智能-画图形(扩展)
    人工智能-画图形(2)
    人工智能—爬虫
    人工智能—图形
    在django中进行MySQL入库
    djang 过滤器和装饰器
    NGINX、HAProxy和Traefik负载均衡能力对比(转载)
  • 原文地址:https://www.cnblogs.com/zhanghanbing/p/6839315.html
Copyright © 2020-2023  润新知