当前位置: 代码迷 >> 综合 >> SEED Labs信息安全实验
  详细解决方案

SEED Labs信息安全实验

热度:56   发布时间:2023-12-05 13:29:46.0

1.1  SEED Labs 介绍

    SEED Labs是一套完整的信息安全实验,涵盖本科信息安全教学中的大部分基本原理,可用于提高学生体验式学习的实验室练习。项目组2002年由杜文亮教授创建,目前开发了30个实验,涵盖了各种计算机安全概念,原理和实践,几百所大学已采用。实验楼翻译制作的SEEDLabs在线实验课永久免费并开源。

    SEED Labs网站:http://www.cis.syr.edu/~wedu/seed/

1.2  实验室项目

1.  软件安全实验室

    a)  肮脏的COW攻击实验室

    利用Linux内核中的恶意COW竞争条件漏洞获得root权限。

    b)  缓冲区溢出漏洞实验

    使用shellcode启动攻击来利用缓冲区溢出漏洞;采取多种对策进行实验。

    c)  返回到libc攻击实验室

    使用return-to-libc技术来击败缓冲区溢出攻击的“非可执行堆栈”对策。

    d)  环境变量和Set-UID实验室

    这是Set-UID实验室的重新设计。

    e)  Set-UID程序漏洞实验

    启动对特权Set-UID根程序的攻击;环境变量的风险;system()的副作用。

    f)  Race条件漏洞实验

    在特权程序中利用竞争条件漏洞;用各种对策进行实验。

    g)  格式字符串漏洞实验

    利用格式字符串漏洞可以使程序崩溃,窃取敏感信息或修改关键数据。

    h)  Shellshock漏洞实验室

    启动攻击以利用2014年底发现的Shellshock漏洞。

2.  网络安全实验室

    a)  TCP/IP攻击实验室

    发起攻击以利用TCP/IP协议的漏洞,包括会话劫持,SYN洪泛,TCP重置攻击等。

    b)  Heartbleed攻击实验室

    使用心跳攻击从远程服务器窃取秘密。

    c)  本地DNS攻击实验室

    使用多种方法在局域网环境中对计算机进行DNS欺骗攻击。

    d)  远程DNS攻击实验室

    使用Kaminsky方法在远程DNS服务器上启动DNS缓存中毒攻击。

    e)  数据包嗅探和欺骗实验室

    编写程序来嗅探通过本地网络发送的数据包;编写程序来欺骗各种类型的数据包。

    f)  防火墙探索实验室

    编写一个简单的包过滤防火墙;使用Linux内置的防火墙软件和网络代理防火墙;试验逃避防火墙的方法。

    g)  防火墙旁路实验室

    实现一个简单的vpn程序(客户端/服务器),并用它绕过防火墙。

    h)  虚拟专用网络(VPN)实验室

    使用TUN/TAP技术为Linux设计和实现传输层VPN系统。

    i)  MinixIPSec实验室

    在Minix操作系统中实施IPSec协议并使用它来设置虚拟专用网络。

    j)  Minix防火墙实验室

    在Minix操作系统中实现简单的防火墙。

3.  Web安全实验室

    l  基于Elgg的实验室(SEEDUbuntu12.04VM)

        a)  跨站脚本攻击实验室

        针对易受攻击的Web应用程序启动跨站脚本攻击。采取多种对策进行实验。

        b)  跨站请求伪造攻击实验室

        针对易受攻击的Web应用程序发起跨站点请求伪造攻击。采取多种对策进行实验。

        c)  网络跟踪实验室

        尝试使用网络跟踪技术,了解用户在浏览网页时如何进行检查。

        d)  SQL注入攻击实验室

        在易受攻击的Web应用程序上启动SQL注入攻击。采取多种对策进行实验。这是一个新开发的实验室,与使用Collabtive的实验室不同。本实验不使用Elgg; 相反,它使用我们开发的Web应用程序。

    l  基于协作的实验室(SEEDUbuntu12.04和11.04 VM)

    Collabtive是一个开源的基于Web的项目管理系统。以下实验可以在 SEEDUbuntu12.04和SEEDUbuntu11.04虚拟机中进行。

        a)  跨站脚本攻击实验室

        针对易受攻击的Web应用程序启动跨站脚本攻击。采取多种对策进行实验。

        b)  跨站请求伪造攻击实验室

        针对易受攻击的Web应用程序发起跨站点请求伪造攻击。采取多种对策进行实验。

        c)  SQL注入实验室

        在易受攻击的Web应用程序上启动SQL注入攻击。采取多种对策进行实验。

        d)  Web浏览器访问控制实验室

        探索浏览器的访问控制系统以了解其安全策略。

    l  基于PhpBB的实验室(SEEDUbuntu9.11VM)

    PhpBB是一个开源的基于Web的留言板系统,允许用户发布消息。我们已经对我们的实验室进行了修改。以下实验可以在我们的 SEEDUbuntu9.11虚拟机中进行。这些基于PhpBB的实验室不再受到支持,因为我们已经切换到新虚拟机中的其他Web应用程序。

        a)  跨站脚本攻击实验室

        针对易受攻击的Web应用程序启动跨站脚本攻击。采取多种对策进行实验。

        b)  跨站请求伪造攻击实验室

        针对易受攻击的Web应用程序发起跨站点请求伪造攻击。采取多种对策进行实验。

        c)  SQL注入实验室

        在易受攻击的Web应用程序上启动SQL注入攻击。采取多种对策进行实验。

        d)  ClickJacking攻击实验室

        在易受攻击的网站上发起ClickJacking攻击。采取多种对策进行实验。

4.  系统安全实验室

    a)  崩溃攻击实验室

    启动攻击以利用Intel CPU中的Meltdown漏洞。

    b)  幽灵攻击实验室

    启动攻击以利用Intel CPU中的Specter漏洞。

    c)  Linux能力探索实验室

    探索Linux中的POSIX1.e能力系统,以了解如何将特权划分为更小的部分以确保符合最低特权原则。

    d)  基于角色的访问控制(RBAC)实验室

    为Minix设计和实施一个集成访问控制系统,该系统使用基于能力和基于角色的访问控制机制。学生需要修改Minix内核。

    e)  加密文件系统实验室

    为Minix设计和实现加密文件系统。学生需要修改Minix内核。

5.  加密实验室

    a)  MD5碰撞攻击实验室

    使用MD5冲突攻击创建两个具有相同MD5散列值的不同程序。

    b)  RSA公钥加密和签名实验室

    编写一个程序来实现RSA算法,并使用它来进行加密,解密,签名生成和验证。

    c)  密钥加密实验室

    探索秘密密钥加密及其使用OpenSSL的应用程序。

    d)  单向哈希函数实验室

    探索使用OpenSSL的单向散列函数及其应用程序。

    e)  公钥加密和PKI实验室

    使用OpenSSL探索公钥密码学,数字签名,证书和PKI。

6.  移动安全实验室

    a)  Android重新包装实验室

    将恶意代码插入现有Android应用程序中,然后重新打包。

    b)  Android设备制作实验室

    开发一个OTA(空中下载)软件包,从根到底安装一个Android设备。