20242802 2024-2025-2 《网络攻防实践》课程总结

20242802 2024-2025-2 《网络攻防实践》课程总结

目录

第一次实践 [网络攻防环境的搭建](20242802 2024-2025-2 《网络攻防实践》第一周作业 - Anton_buer - 博客园):

实验过程

在VMWare Workstations软件上搭建我们网络攻防实验所需要的环境,根据提供的课程资料我安装了靶机:Win2kserver (Windows)、Metasploitable2-linux(Linux)、WinXP attacker (Windows XP)、攻击机:Kali-linux-2024.4、SEED Ubuntu9、以及蜜网网关Honeywall,进行虚拟网卡以及网关等基础配置并确保各个虚拟机能够正常联通。

第二次实践 [网络信息收集技术](20242802 2024-2025-2 《网络攻防实践》第二周作业 - Anton_buer - 博客园):

实验过程

主要围绕网络信息收集技术展开。首先,我选择了一个DNS域名(sina.com.cn),通过使用ip138.com等查询工具,查询并获取了该域名的注册人及其联系方式、对应的IP地址以及IP地址所在的国家、城市和具体地理位置等信息。接着,我尝试获取了BBS、论坛、QQ、MSN中某一好友的IP地址,并查询了该好友所在的具体地理位置。在实验过程中,我还使用了nmap开源软件对靶机环境进行了扫描,通过不同的命令选项,查询了靶机IP地址是否活跃、开放的TCP和UDP端口、操作系统及版本以及安装的服务等信息。此外,我还尝试使用Nessus开源软件对靶机环境进行扫描,但由于网络连接问题,我最终在WinXP虚拟机上完成了扫描,并分析了扫描结果,了解了靶机上存在的安全漏洞。最后,我通过搜索引擎搜索了自己在网上的足迹,确认了是否存在隐私和信息泄漏问题。

第三次实践 [网络嗅探与协议分析](20242802 2023-2024-2《网络攻防实践》第三周作业 - Anton_buer - 博客园):

实验过程

实验围绕网络包捕获与分析展开,主要使用了tcpdump和Wireshark两款工具。在tcpdump实验中,通过设置合适的捕获命令,成功捕获了访问天涯社区网站时的网络包,并从中筛选出浏览器访问的Web服务器数量及其IP地址。Wireshark实验则聚焦于TELNET登录过程,通过对捕获的数据包进行分析,清晰地看到了用户名和密码的明文传输过程,进而提取出了登录信息。此外,还借助Wireshark对一个网络扫描器的pcap文件进行了深入分析,确定了攻击主机和目标主机的IP地址,识别出了扫描工具和扫描方法,以及攻击主机的操作系统类型,进一步加深了对网络攻击行为的理解

第四次实践 [TCP/IP网络协议攻击](20242802 2023-2024-2《网络攻防实践》第四周作业 - Anton_buer - 博客园):

实验过程

这次深入探究了多种网络攻击技术,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击以及TCP会话劫持攻击。在ARP缓存欺骗攻击实验中,通过伪造ARP数据包,成功篡改了靶机的ARP表,使攻击机能够冒充网关,截获了靶机之间的通信数据。ICMP重定向攻击实验中,利用netwox工具向目标主机发送伪造的ICMP重定向报文,成功改变了目标主机的默认路由,使其网络流量被重定向到攻击机。SYN Flood攻击实验中,通过向靶机的特定端口发送大量的SYN请求,导致靶机的半连接队列被占满,使其无法正常建立新的TCP连接,从而实现了拒绝服务攻击。TCP RST攻击实验中,攻击机向靶机发送虚假的TCP RST分节,成功强制终止了靶机上已建立的TCP连接。最后,在TCP会话劫持攻击实验中,借助ettercap工具,通过ARP欺骗获取了靶机之间的通信会话,并成功插入了自己的数据,控制了靶机的TCP连接。

第五次实践 [ 网络安全防范技术](20242802 2023-2024-2 《网络攻防实践》第五周作业 - Anton_buer - 博客园):

实验过程

这次实验主要涉及防火墙配置和入侵检测系统的使用。在防火墙配置方面,我首先在Kali虚拟机上安装了iptables工具,并通过设置规则链和规则,成功实现了对ICMP数据包的过滤,使得主机无法接收Ping请求,增强了主机的隐蔽性。此外,我还配置了基于IP地址的访问控制规则,仅允许特定IP地址访问主机的FTP、HTTP等网络服务,而拒绝其他IP地址的访问请求,有效限制了网络访问范围,提高了系统的安全性。在入侵检测实验中,我使用Snort对给定的pcap文件进行了入侵检测。通过配置Snort从离线文件读取数据源,并设置报警日志的输出方式和路径,我成功生成了检测结果。通过对报警日志的分析,识别出了nmap发起的端口扫描等攻击行为,了解了网络攻击的特征和手段。此外,我还查看了Snort配置文件中协议数据包模块的统计数据,了解了网络流量中不同协议的占比情况,为入侵检测提供了数据支持。在分析配置规则环节,我查看了蜜网网关的防火墙配置文件,分析了其规则链、黑名单、白名单等配置项的作用,了解了防火墙如何控制网络流量的进出。同时,我还分析了蜜网网关中IDS/IPS的配置规则,了解了其如何检测和阻止潜在的攻击行为,以及如何记录和处理从蜜罐中逃逸的IP地址等信息。最后,我还检查了iptables和Snort服务的运行级别配置情况,确认了服务在不同运行模式下的启动状态,并查看了Snort规则的自动更新设置,确保其能够及时应对新型攻击。

第六次实践 [Windows操作系统安全攻防](20242802 2024-2025-2 《网络攻防实践》实践第六周报告 - Anton_buer - 博客园):

实验过程

主要围绕Metasploit攻击和取证分析展开。在Metasploit攻击实验中,我使用Kali Linux虚拟机上的Metasploit软件对Metasploitable靶机进行了远程渗透攻击。通过选择MS08-067漏洞利用模块,并设置合适的攻击载荷,我成功获取了靶机的访问权,并在靶机上创建了文件夹,验证了攻击的成功。在取证分析实验中,我分析了一个特定IP地址对蜜罐主机的NT系统破解攻击过程。通过使用Wireshark打开攻击日志文件,我观察到了网络流量主要在两个IP地址之间传输,包括HTTP协议的通信和TCP重置包。通过对HTTP流的筛选和分析,我发现了攻击者利用UNICODE编码漏洞和RDS漏洞进行攻击的行为,以及攻击者通过蜜网主机下载文件、尝试添加用户等操作。在团队对抗实践环节,我分别作为攻击方和防守方进行了实验。作为攻击方,我利用Metasploit对防守方的WinXP attacker靶机进行了MS08-067漏洞攻击,并成功获取了控制权;作为防守方,我使用Wireshark监听并分析了攻击过程,提取了攻击者的IP地址、攻击时间、利用的漏洞等关键信息。

第七次实践 [Linux操作系统攻防](20242802 2024-2025-2 《网络攻防实践》实践第七周报告 - Anton_buer - 博客园):

实验过程

主要进行了Linux远程渗透攻击和攻防对抗实践。在Linux远程渗透攻击实验中,我使用Kali Linux虚拟机上的Metasploit软件对Metasploitable靶机进行了攻击。首先,我通过nmap扫描靶机,发现了其存在的漏洞,如Samba服务的Usermap Script漏洞。然后,我利用Metasploit中的相关攻击模块,选择了远程Shell作为攻击载荷,并设置了攻击参数,包括目标主机IP和本地主机IP。执行攻击后,我成功获取了靶机的远程Shell,并验证了获得的权限级别。在攻防对抗实践环节,我分别作为攻击方和防御方进行了实验。作为攻击方,我利用Metasploit对靶机进行了渗透攻击,成功获得了远程控制权,并尝试进一步提升至root权限;作为防御方,我使用Wireshark对攻击过程进行了监听和分析,提取了攻击者的IP地址、目标IP和端口、攻击发起时间、利用的漏洞以及攻击成功后在命令行输入的信息。

第八次实践 [恶意代码分析实践](20242802 2024-2025-2 《网络攻防实践》实践第八周报告 - Anton_buer - 博客园):

实验过程

实验主要围绕恶意代码分析和网络数据源分析展开。在恶意代码分析实验中,我首先对一个名为RaDa.exe的恶意代码样本进行了文件格式识别、加壳工具检测和脱壳处理。通过使用file命令、strings命令、PEiD工具和超级巡警脱壳工具,我确定了该样本的文件格式、运行平台、加壳工具,并成功获取了脱壳后的文件。然后,我使用IDA Pro对脱壳后的文件进行了反汇编分析,通过查看字符串窗口、分析函数调用关系和流程图,我发现了恶意代码的行为特征和目的,如访问特定网站下载文件、修改注册表实现开机自启、尝试连接内网网段进行攻击等。此外,我还通过Process Explorer软件监听了恶意代码的运行过程,进一步确认了其行为和目的。在网络数据源分析实验中,我使用Wireshark和tcpflow工具对一个基于Windows 2000系统被攻破并加入僵尸网络的网络数据源进行了分析。通过对网络数据包的筛选和分析,我了解了IRC协议的通信过程,发现了蜜罐主机与多个IRC服务器之间的通信记录,提取了与特定IRC服务器的通信数据,统计了访问僵尸网络的主机数量,以及分析了攻击蜜罐主机的IP地址和攻击者尝试攻击的安全漏洞。

第九次实践 [软件安全攻防--缓冲区溢出和shellcode](20242802 2024-2025-2 《网络攻防实践》实践第九周报告 - Anton_buer - 博客园):

实验过程

要围绕缓冲区溢出攻击和Shellcode注入展开。实验中,我使用了一个名为pwn1的Linux可执行文件作为攻击目标。首先,我通过反汇编分析了解了该程序的结构和执行流程,发现程序中存在一个名为getShell的隐藏代码片段,正常情况下不会被执行。实验的目标是通过多种方法运行这个隐藏的代码片段,并进一步学习如何注入并运行自定义的Shellcode。在实践任务一中,我尝试手工修改可执行文件的机器指令,通过直接篡改程序的执行流程,使其跳转到getShell函数。我使用gedit命令打开pwn文件,并将其转换为16进制格式进行修改。通过计算新的偏移量,并将原来的偏移量替换为新的偏移量,我成功地修改了可执行文件,使其在运行时跳转到getShell函数,获取了shell。在实践任务二中,我利用程序中存在的缓冲区溢出漏洞,构造了一个特殊的输入字符串,覆盖了函数的返回地址,从而触发了getShell函数的执行。我首先确定了缓冲区的大小,并计算出了溢出长度。然后,我构造了一个包含填充字节和目标函数地址的输入字符串,并将其写入文件。通过将该文件的内容作为程序的输入,我成功地实现了缓冲区溢出攻击,获取了shell。在实践任务三中,我尝试注入一段自己编写的Shellcode,并确保其能够在目标程序中成功运行。我首先使用execstack工具将堆栈设置为可执行状态,并关闭了地址随机化。然后,我构造了一个包含填充字节、占位符地址、NOP滑动区域和实际Shellcode的输入字符串,并将其保存到文件中。通过将该文件的内容作为程序的输入,我成功地注入了Shellcode,并在目标程序中获取了一个Shell。在实验过程中,我还使用gdb工具附加到目标程序的进程中,反汇编了相关函数,并设置了断点。通过查看寄存器和内存内容,我验证了注入的Shellcode是否正确写入堆栈。

第十次实践 [Web应用程序安全攻防](20242802 2024-2025-2 《网络攻防实践》实践第十周报告 - Anton_buer - 博客园):

实验过程

主要围绕Web浏览器渗透攻击和取证分析展开。在Web浏览器渗透攻击实验中,我使用Kali Linux虚拟机上的Metasploit工具对Windows靶机进行了攻击。通过选择MS06-014渗透攻击模块,并设置合适的攻击载荷,我成功构造出了恶意网页木马脚本。然后,我在靶机环境中启动浏览器,访问了恶意网页木马脚本的URL,成功获取了靶机的shell。在取证分析实验中,我首先访问了一个名为start.html的文件,根据文件中给出的线索,依次解密后续文件地址,并对其执行32位MD5散列,以散列值作为文件名从指定网址下载对应文件。通过对下载文件的分析,我发现了多个被加密的文件和二进制程序文件。对于二进制程序文件,我进行了静态反汇编和动态调试,最终还原了文件的真实内容和攻击代码。在实验过程中,我还学习了如何使用xxtea分组密码算法对base64编码内容进行解密,以及如何通过MD5散列值下载对应的文件。

第十一次实践 [浏览器安全攻防实践](20242802 2024-2025-2 《网络攻防实践》实践第十一周报告 - Anton_buer - 博客园):

实验过程

主要围绕SQL注入攻击与防御以及XSS跨站脚本攻击展开。在SQL注入攻击与防御实验中,我首先通过操作名为Users的数据库中的credential表,使用SQL查询语句熟悉了如何查询员工的个人信息。然后,我利用Web应用存在的SQL输入漏洞,通过构造恶意的SQL注入语句,成功绕过了正常登录流程,获取了管理员或员工的登录权限。此外,我还通过精心构造的SQL注入语句,篡改了数据库中员工的个人信息,如修改薪水、密码等。在SQL对抗环节,我分析了SQL注入攻击的原理和漏洞所在,并采取了相应的防御措施,如对用户输入进行严格的验证和过滤,改用参数化查询等,成功修复了SQL注入漏洞。在XSS跨站脚本攻击实验中,我在Elgg配置文件中嵌入了一个JavaScript程序,当其他用户查看该配置文件时,该JavaScript程序会被执行,从而弹出了一个警报窗口。然后,我进一步利用XSS漏洞,通过JavaScript程序获取并显示了用户的cookie信息,并将获取到的受害者cookie信息发送给攻击者。此外,我还编写了JavaScript程序,自动将攻击者添加为受害者的Elgg朋友,并修改了受害者的信息。在XSS蠕虫攻击实验中,我编写了一个能够在用户之间传播的XSS蠕虫程序,当用户查看受感染用户的个人资料时,也会被感染。在对抗XSS攻击环节,我分析了XSS攻击的原理和传播途径,并采取了有效的防御措施,如对用户输入进行严格的验证和过滤,使用内容安全策略(CSP)等,成功对抗了XSS攻击。

最喜欢的且做的最好的一次实践是哪次?为什么?

我最喜欢的一次实验是第六周的实践“Windows操作系统安全攻防”,在团队对抗实践环节,我和鲍恒宇同学协作,分别进行了攻击和防御实验。我们首先在虚拟网络编辑器中将各自的 Kali 攻击机和 Win2kServer 靶机均设置为 Vmnet0 桥接模式,并确保在实验过程中连接同一 WIFI。配置完成后,我们确认了攻击机和靶机的 IP 地址,并进行了连通性测试。作为攻击方,我使用 Metasploit 对防守方的 WinXP attacker 靶机选择漏洞进行攻击。我利用 MS08-067 漏洞进行远程渗透攻击,并查看攻击负载,设置攻击载荷为反向 TCP 连接,设置目标主机 IP(RHOST)和本地主机 IP(LHOST)。执行攻击后,我成功进入对方的主机,并在对方主机中创建了文件夹,靶机中也清晰地显示了该文件夹。而作为防守方,鲍恒宇同学通过 Wireshark 监听并分析了网络数据包,尝试追踪我的攻击行动。在这一过程中,我们互相交流、协作,共同完成了攻击和防御的实验。

这次实验让我最喜欢的部分就是能够和同学一起模拟攻防双方。在团队对抗实践中,我和鲍恒宇同学的协作让我感受到了网络攻防的真实性和复杂性。我们通过互相配合,不仅完成了攻击和防御的任务,还深入理解了网络攻防的各个环节。在攻击过程中,我需要不断思考如何利用漏洞获取目标主机的访问权,而在防守过程中,鲍恒宇同学则需要通过 Wireshark 分析网络数据包,追踪我的攻击行动。

本门课学到的知识总结

第一次实践 [网络攻防环境的搭建](20242802 2024-2025-2 《网络攻防实践》第一周作业 - Anton_buer - 博客园):

  • 靶机:网络攻防中的被攻击方,有安全漏洞,模拟真实的网络中的攻击目标,可以使用其验证防御策略。
  • 攻击机:网络攻防中的攻击方,通常安装有攻击软件,可以对其他主机进行网络攻击,模拟真实世界中的攻击行为。
  • SEED虚拟机:预装了各种已知的安全漏洞和实验脚本。
  • 蜜网网关:诱捕攻击者,吸引攻击者进入蜜网,监控和记录攻击行为。
  • VMware Workstation的虚拟网络配置:
    • NAT模式:在NAT模式下,虚拟机通过宿主机的IP地址访问外部网络。虚拟机对外部网络来说是不可见的,但可以访问外部网络。
    • 仅主机模式:在仅主机模式下,虚拟机只能与宿主机通信,不能访问外部网络。适用于需要隔离的测试环境。
    • 桥接模式:在桥接模式下,虚拟机直接连接到物理网络,就像一个独立的物理设备一样。虚拟机可以访问外部网络,也可以被外部网络访问。
    • 自定义模式:自定义模式允许用户配置更复杂的网络环境,例如多个虚拟网络或特定的网络配置。

实践收获

通过第一个周的实验我对网络攻防有了初步的认识,了解了靶机、攻击机、蜜网等关键概念,并掌握了搭建攻防环境的基本方法。在实验过程中,我遇到了一些问题,如靶机IP设置失败、攻击机安装不成功等,让我体会到了理论与实践结合的重要性,只有通过实际操作,才能更好地理解和掌握网络攻防技术。

第二次实践 [网络信息收集技术](20242802 2024-2025-2 《网络攻防实践》第二周作业 - Anton_buer - 博客园):

DNS查询

  • DNS注册信息查询:通过使用在线工具(如WHOIS查询服务)或命令行工具(如whois命令),可以查询到域名的注册信息,包括注册人、注册邮箱、注册电话等。
  • IP地址查询:使用DNS查询工具(如nslookupdig命令),可以将域名解析为对应的IP地址。这对于了解网站或服务的实际服务器位置非常有用。
  • 地理位置查询:通过IP地址查询工具(如ip138.com、ipinfo.io等),可以查询到IP地址所在的地理位置,包括国家、城市、ISP等信息。这对于了解用户或服务器的物理位置很有帮助。

使用nmap工具进行端口扫描

  • -sP:主机发现,扫描局域网内活跃的主机,确定目标主机是否在线。
  • -sS:端口扫描,通过-sS选项进行TCP端口扫描,了解目标主机开放的端口。
  • -O:操作系统识别,利用-O选项尝试识别目标主机的操作系统类型和版本。
  • sV:服务版本检测,使用-sV选项检测目标主机上运行的服务及其版本信息。

实践收获

我掌握了DNS查询、IP地址追踪、nmap扫描以及Nessus漏洞扫描等基本技能。在实验过程中,我感受到网络信息的获取相对容易,但也隐藏着诸多风险。例如,通过简单的查询就能获取到一些网站的注册人信息和IP地址,以及在使用QQ、MSN等软件时能够找到对方的IP地址。在使用nmap和Nessus进行扫描时,我发现即使是普通的网络设备也可能存在诸多安全漏洞,一旦被恶意利用,可能导致系统被攻陷,信息泄露。此外,通过搜索自己网上的足迹,我更加清楚地认识到个人隐私在网络环境中的脆弱性。可想而知我们在日常网络活动中不经意间留下的信息,有多容易被不法分子收集和利用。

第三次实践 [网络嗅探与协议分析](20242802 2023-2024-2《网络攻防实践》第三周作业 - Anton_buer - 博客园):

  • 网络嗅探 :网络监控技术,用于捕获和分析网络中传输的数据包。它通过监听网络接口,获取经过该接口的所有网络通信数据,并对这些数据进行解析和分析,可以了解网络流量的内容、结构和行为。
  • 协议分析:通过捕获和分析网络流量中的数据包,来理解网络通信的过程和内容。
  • 取证分析:通过收集、保存和分析电子证据,以确定事件的真相。主要用于分析网络攻击的过程和攻击者的意图
  • tcpdump工具:开源的命令行网络嗅探工具,可以根据特定的协议、IP 地址、端口号等条件捕获数据包。

实践收获

这次实验主要的收获是学会使用tcpdump和Wireshark这两个网络分析工具,帮助我了解网络流量的内容、结构和行为。实验中,我不仅学会了如何使用这些工具捕获和分析网络包,还对网络协议的实际运行机制有了更直观的认识。特别是通过分析TELNET协议的明文传输特性,我清晰地看到了在网络环境下用户敏感信息面临的泄露风险。在取证分析实验中,通过对pcap文件的细致分析,我掌握了识别网络攻击行为和攻击手段的方法,这为我今后进行网络安全事件的调查和分析提供了清晰的思路。同时,我也了解到了p0f工具在操作系统识别方面的应用,进一步丰富了我的网络安全知识体系。

第四次实践 [TCP/IP网络协议攻击](20242802 2023-2024-2《网络攻防实践》第四周作业 - Anton_buer - 博客园):

  • TCP的“三次握手”

    TCP协议中,用于建立链接的三个步骤:

    第一次挥手(FIN)• 发起方(客户端):当客户端完成数据发送任务后,会发送一个带有 FIN 标志的TCP报文给服务器。 FIN 标志表示“我这边的数据已经发送完毕,准备关闭连接了”。

    第二次挥手(ACK)• 接收方(服务器):服务器收到客户端的 FIN 报文后,会发送一个带有 ACK 标志的TCP报文作为响应。 ACK 标志表示“我收到了你的关闭连接请求,我这边的数据可能还没有发送完,稍等一下”。

    第三次挥手(FIN + ACK)• 接收方(服务器):当服务器完成自己的数据发送任务后,也会发送一个带有 FIN 标志的TCP报文给客户端,同时带上 ACK 标志,表示“我这边的数据也发送完了,现在可以关闭连接了”。

  • ARP缓存欺骗攻击:攻击机通过发送假的ARP数据包,可以篡改IP地址与MAC地址的映射关系,实现对被靶机的ARP欺骗。

  • ICMP重定向攻击:攻击者发送伪装的ICMP重定向消息给目标主机,指示目标主机使用不安全的路由器或网关进行通信。

  • SYN Flood攻击:攻击机向目标服务器发送大量的SYN请求,但不进行后续的ACK响应,导致目标服务器的半连接队列被占满,消耗目标服务器的资源,无法正常建立新的TCP连接,从而实现拒绝服务攻击。

  • TCP RST攻击:攻击者发送虚假的TCP RST分节给目标主机,强制终止已建立的TCP连接。

  • TCP会话劫持攻击:攻击者通过篡改TCP连接中的序列号和确认号,插入自己的数据,从而控制目标设备的TCP连接。

实践收获

通过本次实验,我对TCP/IP参考模型有了更深入的理解,尤其是对网络层、传输层协议在实际攻击中的应用有了清晰的认识。实验过程中,我不仅掌握了多种网络攻击技术的原理和实施方法,还深刻体会到了网络协议在实现过程中存在的安全隐患。例如,ARP协议由于缺乏对ARP数据包真实性的验证,容易遭受ARP缓存欺骗攻击;TCP协议的三次握手过程在面对SYN Flood攻击时,由于无法有效识别恶意的SYN请求,容易导致资源耗尽。这些实验让我认识到,网络安全防护需要从协议层面进行加固,同时也要加强对网络流量的监测和分析,以便及时发现和防范潜在的攻击行为。此外,通过实际操作,我还学会了使用netwox、ettercap等攻击工具,这为我今后进行网络安全研究和防护提供了有力的工具支持。

第五次实践 [ 网络安全防范技术](20242802 2023-2024-2 《网络攻防实践》第五周作业 - Anton_buer - 博客园):

  • 防火墙:是位于内部网络与外部网络之间的网络安全设备,其主要功能是监控、控制和过滤网络流量,以保护内部网络免受外部威胁的攻击。
  1. 访问控制 可以根据预设的规则,允许或拒绝特定IP地址、端口或协议的网络流量。
  2. 网络隔离 将内部网络与外部网络隔离,防止外部网络的恶意攻击直接进入内部网络。
  3. 攻击检测与防御 可以检测和防御常见的网络攻击,端口扫描、DDoS攻击、恶意软件传播等。
  4. 日志记录与审计 可以记录网络流量的详细信息,包括访问时间、源地址、目的地址、使用的协议等。
  • iptables工具:Linux系统中的一种的防火墙工具,iptables通过设置规则链(INPUT、OUTPUT、FORWARD)和规则,对经过Linux内核网络堆栈的数据包进行过滤、修改和转发。
  • Snort:网络入侵检测系统(NIDS)和入侵防御系统(NIPS),Snort通过分析网络数据包的特征和
  • 行为模式,识别出常见的网络攻击,并生成报警日志。

实践收获

防火墙作为网络安全的重要防线,能够有效控制网络流量的进出,通过对iptables规则的设置,我掌握了如何根据实际需求实现对特定协议、IP地址和端口的访问控制,从而提高系统的安全性。入侵检测系统则能够实时监测网络流量,及时发现并报警潜在的攻击行为,通过对Snort的配置和使用,我了解了如何根据网络环境和安全需求定制检测规则,以及如何分析报警日志来识别攻击类型和特征。此外,我还学习了如何查看和分析防火墙及IDS/IPS的配置文件。

第六次实践 [Windows操作系统安全攻防](20242802 2024-2025-2 《网络攻防实践》实践第六周报告 - Anton_buer - 博客园):

  • Metasploit:提供了多种漏洞利用模块,可以针对不同的操作系统和应用程序进行攻击。
  • MS08-067漏洞:Windows系统漏洞,通过利用该漏洞可以远程获取目标系统的控制权。
  • NT系统破解攻击分析
    • 攻击日志分析:通过分析攻击日志,提取攻击过程中的关键信息。
    • 攻击行为识别:识别攻击行为,如端口扫描、恶意连接、数据泄露等。
    • 攻击者追踪:通过分析数据包的源地址和目标地址,追踪攻击者的IP地址,确定攻击者的地理位置。

实践收获

这次实验我主要学习了Metasploit攻击技术和网络取证分析方法。掌握了如何使用Metasploit进行漏洞扫描、攻击载荷选择和攻击执行,成功获取目标主机的访问权。在取证分析实验中,我学会了如何使用Wireshark分析网络日志文件,提取关键信息,还原攻击过程。通过对攻击日志的细致分析,我了解了攻击者常用的攻击手段和行为特征,如利用漏洞进行SQL注入、下载恶意文件、尝试添加用户等。团队对抗实践环节让我更加直观地感受到了攻防双方的博弈过程,作为攻击方,我体会到了攻击的策略和技术要点;作为防守方,我则学会了如何通过监听和分析网络流量来发现并追踪攻击行为。

第七次实践 [Linux操作系统攻防](20242802 2024-2025-2 《网络攻防实践》实践第七周报告 - Anton_buer - 博客园):

  • Samba服务漏洞:Samba是一个开源的文件共享服务,允许Windows和Linux系统之间进行文件共享。Samba服务存在多个已知漏洞,如Usermap Script漏洞(CVE-2007-2442),攻击者可以利用这些漏洞获取目标主机的访问权限。
  • Linux远程渗透攻击:使用Metasploit针对Linux系统Samba服务的漏洞进行远程渗透攻击,获取目标主机的访问权限。

实践收获

在渗透攻击实验中,我掌握了如何使用Metasploit针对Linux系统中的特定漏洞进行攻击,成功获取目标主机的访问权限。通过对攻击过程的详细记录和分析,我了解了攻击载荷的选择和攻击参数的配置对攻击成功与否的重要性。在攻防对抗实践环节,我体会到了攻防双方的博弈过程。作为攻击方,我学会了如何利用漏洞进行渗透攻击,并尝试提升权限以获取更高的系统控制权;作为防御方,我则学会了如何使用Wireshark等工具监听网络通信,分析攻击行为,提取关键信息,从而为防御措施的制定提供依据。这种攻防对抗的实践让我更加深刻地认识到网络安全防护的重要性,以及在实际网络环境中,攻击者和防御者之间的技术对抗是不断变化和升级的。

第八次实践 [恶意代码分析实践](20242802 2024-2025-2 《网络攻防实践》实践第八周报告 - Anton_buer - 博客园):

  • 恶意代码样本分析:使用文件格式识别工具确定样本的文件格式、在实验过程中使用到的PEiD它可以快速识别可执行文件的格式和加壳信息。一旦确定样本经过加壳,就需要使用脱壳工具。超级巡警脱壳机,来去除外壳,以便进一步分析。脱壳后的文件可以使用字符串提取工具进行分析,这些工具能够提取文件中的字符串信息,
  • 反汇编分析:用IDA Pro等反汇编工具的使用,能够分析恶意代码的行为特征、目的及其防止被分析或逆向工程的技术。
  • Crackme程序逆向工程:用IDA Pro对Crackme程序进行静态和动态分析,寻找特定输入以使程序输出成功信息。
  • 网络数据源分析:利用Wireshark和tcpflow等工具对网络数据源进行分析,了解僵尸网络的构成和攻击方式。

实践收获

在第八次实验中我学习了恶意代码分析和网络数据源分析的方法和技术。在恶意代码分析实验中,我掌握了如何使用多种工具对恶意代码样本进行文件格式识别、加壳检测和脱壳处理,以及如何通过反汇编分析获取恶意代码的行为特征和目的。这让我对恶意代码的编写、传播和攻击手段有了更清晰的认识,也让我了解到了恶意代码作者为了隐藏恶意行为而采用的各种技术,如加壳、修改注册表等。在网络数据源分析实验中,我学会了如何使用Wireshark和tcpflow工具对网络数据包进行筛选、提取和分析,通过对IRC协议通信的分析,我了解了僵尸网络的通信机制和攻击行为。

第九次实践 [软件安全攻防--缓冲区溢出和shellcode](20242802 2024-2025-2 《网络攻防实践》实践第九周报告 - Anton_buer - 博客园):

  • 缓冲区溢出攻击:利用程序中缓冲区处理不当的漏洞,通过向程序的缓冲区输入超出其分配空间的数据,从而覆盖程序的控制信息,如函数返回地址,以实现恶意代码的执行。
  • Shellcode注入与运行:Shellcode是一段用机器语言编写的代码,旨在执行特定的操作,如打开一个shell、连接到远程服务器或修改系统配置。
  • 软件漏洞利用:指利用软件中存在的缺陷或错误来实现非法访问或控制。包括缓冲区溢出、格式化字符串漏洞、整数溢出等

实践收获

在这次实验中我主要学习了缓冲区溢出攻击和Shellcode注入的技术原理和实现方法。缓冲区溢出攻击是一种常见的网络安全威胁,通过对程序缓冲区的溢出,攻击者可以篡改程序的执行流程,执行恶意代码。在实验中我通过手工修改可执行文件的机器指令来改变程序的执行流程,还利用缓冲区溢出漏洞构造特殊的输入字符串,覆盖函数的返回地址,从而实现对目标程序的控制。此外,我还学习了如何编写和注入自定义的Shellcode。我还复习到了汇编语言和计算机组成原理的相关知识。

第十次实践 [Web应用程序安全攻防](20242802 2024-2025-2 《网络攻防实践》实践第十周报告 - Anton_buer - 博客园):

  • SQL注入攻击:一种网络攻击方式,攻击者通过在Web应用程序的输入字段中插入恶意的SQL代码,从而干扰数据库的正常查询逻辑,实现非法访问或篡改数据库内容的目的。这种攻击通常针对Web应用程序中对用户输入处理不当的SQL查询语句。
  • XSS跨站脚本攻击:一种网络安全威胁,攻击者通过在Web页面中插入恶意脚本代码,当这些代码被其他用户浏览时,就会在用户的浏览器中执行,从而实现攻击目的。
  • XSS蠕虫:一种能够在用户之间自动传播的恶意脚本,它可以在用户访问受感染的Web页面时自动执行,并将自己传播到其他用户的页面上。这种蠕虫的传播机制类似于现实生活中的病毒,它可以在用户不知情的情况下迅速扩散,感染大量的用户。

实践收获

第十次的实验主要针对Web浏览器渗透攻击和取证分析的技术和方法。在Web浏览器渗透攻击实验中,我掌握了如何使用Metasploit工具构造恶意网页木马脚本,并通过靶机浏览器访问恶意网页来获取目标主机的控制权。在取证分析实验中,我学会了如何从加密文件中提取线索,通过MD5散列值下载对应的文件,并对二进制程序文件进行静态反汇编和动态调试。

第十一次实践 [浏览器安全攻防实践](20242802 2024-2025-2 《网络攻防实践》实践第十一周报告 - Anton_buer - 博客园):

  • Web浏览器渗透攻击:一种网络攻击方式,攻击者通过利用Web浏览器的漏洞或用户的信任,向目标用户发送恶意网页木马脚本,从而获取目标主机的控制权。
  • 网页木马攻击场景分析:是网络安全领域中的一项重要技能,它涉及从复杂的网络攻击场景中提取关键信息,以揭示攻击过程和攻击者的意图。
  • 浏览器安全漏洞的利用和防御:攻击者通常会寻找浏览器中的安全漏洞,如JavaScript引擎漏洞、插件漏洞等,以实现对用户系统的攻击。

实践收获

针对第十一次实验的主要内容:SQL注入攻击与防御以及XSS跨站脚本攻击的技术和防御方法。在SQL注入攻击实验中,我掌握了如何通过构造恶意的SQL注入语句绕过正常登录流程,获取目标系统的访问权限,并篡改数据库中的数据。我了解了用户输入需要进行严格验证和过滤。在XSS跨站脚本攻击实验中,我利用XSS漏洞嵌入JavaScript程序,获取用户敏感信息,并进行自动加好友、修改用户信息等操作。在本科阶段我们学习过很多前端开发类的课程,但是关于前端的安全性的内容很多都停留在理论阶段,而这次实验让我正真看到了Web应用前端安全性的重要性。

课堂的收获与不足

从第一次搭建网络攻防环境,到后来的SQL注入、XSS攻击,再到最后的Web浏览器渗透攻击每一次实验都让我跳出理论的框架在网络中实战,实践的过程并非一帆风顺让我印象最深刻的是在进行XSS蠕虫编写实验时,我遇到了很多困难。代码总是无法按预期运行,攻击效果总是不尽如人意。但也正是在一次次的尝试与失败中,我逐渐摸清了门路,学会了如何在虚拟的世界里构建起属于自己的攻防战场。

在学习的过程中,我常常被一些细节深深触动。比如,在进行网络信息收集实验时,我通过各种工具收集到了大量的个人信息,包括IP地址、地理位置、甚至一些用户的隐私数据。那一刻,我感到了一种前所未有的责任感。如果不是在实验那么这些数据背后就是一个个鲜活的个体,他们的隐私和安全掌握在我的手中。我开始思考,如果我是被攻击者,会有多无助?这种换位思考让我更加深刻地理解了网络安全的重要性,也让我在后续的实验中更加谨慎,更加注重隐私保护。

再比如,在进行Web浏览器渗透攻击实验时,我成功获取了目标主机的控制权。看着屏幕上显示的“成功”二字,我并没有想象中的兴奋,反而有些沉重。因为我知道,这不仅仅是一次技术的胜利,更是一次对网络安全防线的突破。这种突破让我感到了一种深深的无力感,因为这意味着我们的网络世界存在着如此多的漏洞和风险。回想起本科时期,我参与了众多开发项目,从简单的网页设计到复杂的系统架构,然而,那时的我,对安全方面的考量却近乎于零。我所构建的系统,如同一座没有城墙的城堡,完全承受不了任何攻击。

虽然我未来不一定能够从事网络安全方面的工作,但在这门课程中学到的思维方式、解决问题的能力和对技术的深刻理解,将在我未来的任何领域中都发挥重要作用。这些宝贵的经验和技能,将成为我职业生涯中最坚实的基石,帮助我在未来的道路上走得更远、更稳。

参考文献

posted @ 2025-06-11 12:54  Anton_buer  阅读(67)  评论(0)    收藏  举报