自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 20232803 2023-2024-2 《网络攻防实践》实践十一报告

这次实践的内容与网页木马相关,这与我们的日常生活还是比较接近的。我在实践中进行了渗透攻击,也对网页木马进行了分析。在攻防对抗实践中,还用到了社会工程学攻击:通过设计一封迷惑人的邮件,诱使防守方点击钓鱼链接,以实现对其终端的控制,这一过程还是挺有趣的,这也让我意识到不要随意点击来历不明的链接。

2024-05-30 19:51:30 953

原创 20232803 2023-2024-2 《网络攻防实践》实践十报告

对于SQL注入和XSS攻击,以前只是了解但还未实践过,这一次的实践让我对它们有了直观的感受。SQL注入漏洞让用户可以随意的操作数据库进行增删改查,XSS蠕虫更是能够自我传播。这两个漏洞都是因为没有对用户输入的数据进行校验导致的,因此在开发阶段就应注意这些安全隐患。好在现如今许多开发框架都已替我们考虑到了这些安全漏洞,现在很少有网站存在SQL注入漏洞和XSS漏洞了。

2024-05-23 19:52:48 908

原创 20232803 2023-2024-2 《网络攻防实践》实践九报告

第一个实践让我深入了解了汇编指令和机器码的工作原理,使我能够准确地修改机器指令,改变程序的执行流程。在第二个实践中,通过利用缓冲区溢出漏洞,我学会了如何构造特定的输入字符串来覆盖函数的返回地址并触发目标函数,这个过程让我深刻理解了缓冲区溢出攻击的原理和危害。在第三个实践中,通过注入自己制作的Shellcode,可以执行特定的命令或程序。但要注意的是,系统一般有防御机制来阻止恶意代码的注入和执行,如地址随机化、栈保护等。在注入Shellcode之前,需要先绕过这些保护机制。

2024-05-15 19:24:56 814

原创 20232803 2023-2024-2 《网络攻防实践》实践八报告

在分析网络数据源的过程中,面对大量的数据,我学会了如何筛选和识别关键信息,通过对数据包的深入分析,我能够理解攻击者的策略和行为模式。在筛选后的数据包中发现只有NBNS包,NBNS是网络基本输入/输出系统(NetBIOS)的一部分,主要负责在基于NetBIOS名称访问的网络上提供主机名和地址映射服务。如上图所示,前面的字符串都是一些乱码,而最后出现了两个dll文件和三个没有文件名后缀的文件,根据这三个文件的文件名,猜测是程序或函数。在筛选后的数据包中只有一些TCP三次握手过程的数据包,没有数据的交互。

2024-05-03 16:13:07 901

原创 20232803 2023-2024-2 《网络攻防实践》实践七报告

防守方:使用 tcpdump/wireshark/snort 监听获得网络攻击的数据包文件,结合 wireshark/snort 分析攻击过程,获得攻击者的IP、目标IP和端口、攻击发起时间、攻击利用漏洞、使用Shellcode、以及成功之后在命令行输入的信息。攻击方:使用 Metasploit ,选择 Metasploitable 靶机中发现的漏洞进行渗透攻击,获得远程控制权,并尝试进一步获得root权限。在攻击前,打开Kali的Wireshark进行抓包,攻击完成后,在Wireshark中输入。

2024-05-02 20:12:10 1125 1

原创 20232803 2023-2024-2 《网络攻防实践》实践6报告

答:攻击者首先通过Unicode漏洞对目标主机进行了信息搜集,掌握了操作系统的基本情况。通过这一系列复杂的操作,攻击者最终成功地获得了系统的访问权限,并为自己创建了一个具有高权限的用户账户,从而实现了对目标系统的控制。答:在成功获取系统权限后,攻击者继续尝试提升权限。答:攻击者对Unicode漏洞使用了Unicode攻击,并对msadcs.dll的RDS漏洞使用msadc.pl渗透工具进行攻击。答:是的,后面攻击者已经发现了他的目标是一台蜜罐主机,并在rfp.txt文件中称这是他见过的最好的蜜罐主机。

2024-04-27 12:05:41 1072

原创 20232803 2023-2024-2 《网络攻防实践》实践五报告

本次实践主要学习防火墙、IDS、IPS的运行机制、原理以及配置规则等内容。通过防火墙和入侵检测,可以获取攻击者的攻击行为。防火墙和入侵检测有助于防御者采取针对性的防御措施,以最小的成本应对最大程度的威胁。蜜网网关拥有较为完善的防御机制,通过使用没有任何防御措施的蜜罐主机,诱导攻击者进入“圈套”。防御者通过观察攻击者对蜜罐主机的攻击,可以总结出攻击者的攻击手段和方法。

2024-04-18 17:38:40 1088 1

原创 20232803 2023-2024-2 《网络攻防实践》实践四报告

指攻击者伪装成路由器发送虚假的ICMP路由路径控制报文,使得受害主机选择攻击者指定的路由路径,从而进行嗅探或假冒攻击的一种技术。在本次实验中,应用netwox工具进行了ARP欺骗攻击、ICMP路由重定向攻击、SYN Flood攻击、TCP RST 攻击和TCP会话劫持,并初步了解了netwox、ettercap等工具的使用,为今后进一步深入了解和实践网络协议攻击奠定了基础。基于TCP三次握手的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而无法正常服务。

2024-04-04 16:41:22 771 1

原创 20232803 2023-2024-2 《网络攻防实践》第3次作业

筛选TCP数据包,可以发现进行了大量的TCP扫描,例如攻击机向靶机发送SYN请求包,靶机返回SYN,ACK确认连接,攻击机响应,说明该端口开放。可以得到靶机所有开放的端口,例如有21、22、23、25、53、80、139、445、3306、5432、8009、8180等等端口。筛选icmp数据包可以发现,攻击机和靶机之间存在双向数据包,说明进行了批量的ping扫描进行主机扫描,以确认目标靶机是否活跃。④你所分析的日志文件中,攻击者使用了那种扫描方法,扫描的目标端口是什么,并描述其工作原理。

2024-03-28 16:28:02 1074 1

原创 20232803 2023-2024-2 《网络攻防实践》第2次作业

通过Windows自带的资源监视器可以对QQ等社交应用软件的数据流量进行监控,但受限于平台保护措施,数据中转等因素,功能较为受限。信息收集是网络攻击中的第一步,是最关键的阶段,也是耗费时间最长的阶段。但信息的收集也不只在攻击前进行,能夹杂在攻击的不同阶段进行。在信息收集阶段一般能获得很多关键有用的信息,这对于进一步攻破目标靶机有着重要意义,也对于选取入侵目标靶机的方法有重要作用。比如:先通过信息收集工具,收集靶机的相关信息以及存在的漏洞,我们利用这些漏洞构造相应的shellcode,获得主机权限。

2024-03-21 16:09:59 775 1

原创 2023-2024-1 20232803《Linux内核原理与分析》第十三周作业

2014年9月24日,Bash中发现了一个严重漏洞shellshock,该漏洞可用于许多系统,并且既可以远程也可以在本地触发。在本实验中,学生需要亲手重现攻击来理解该漏洞,并回答一些问题。什么是ShellShock?Shellshock,又称Bashdoor,是在Unix中广泛使用的Bash shell中的一个安全漏洞,首次于2014年9月24日公开。许多互联网守护进程,如网页服务器,使用bash来处理某些命令,从而允许攻击者在易受攻击的Bash版本上执行任意代码。

2023-12-15 10:45:13 1018

原创 2023-2024-1 20232803《Linux内核原理与分析》第十二周作业

本实验旨在通过执行多个命令和使用Python编程语言实现对系统性能和资源的监测和分析。执行top、vmstat、lsof、tcpdump、netstat、htop、iostat、iptraf命令分别查看效果:top命令提供了实时的系统性能监测,包括CPU、内存和进程信息。vmstat命令显示了系统的虚拟内存使用情况和系统活动信息。lsof命令可以列出当前打开的文件和进程信息。tcpdump命令用于抓取和分析网络数据包。netstat命令提供了网络连接和接口的相关信息。

2023-12-06 19:19:13 986 1

原创 2023-2024-1 20232803《Linux内核原理与分析》第十一周作业

对操作系统安全的关注,实际上是对操作系统中信息安全的关注。信息安全的基本原则是CIA三元组(也称为安全原则三剑客)——机密性(Confidentiality)完整性(Integrity)可用性(Availability)。一个完整的信息安全保障体系,应该充分考虑到CIA三元组的基本原则。机密性(不可见):又称隐私性,是指数据不能被未授权的主体窃取,即避免恶意读操作。完整性(不可改):确保数据只被授权的主体进行授权的修改。即避免恶意写操作。可用性(可读):是指数据能够被授权主体正常访问。

2023-12-01 21:01:30 874 1

原创 2023-2024-1 20232803《Linux内核原理与分析》第十周作业

Linux容器技术是一种操作系统级的虚拟化技术,允许在单个Linux操作系统内核上创建多个隔离的用户空间环境,称为容器。这种技术通过Linux内核的命名空间(Namespace)和控制组(Cgroup)功能来实现隔离,每个容器都拥有自己的文件系统、进程空间、网络空间和资源限制。命名空间(Namesp:Linux内核提供了多种命名空间,如PID(进程ID)、网络、挂载点、用户等。每种命名空间能够在容器间创建隔离的环境,使得容器内的进程、网络、文件系统等资源互相隔离。

2023-11-25 16:15:49 943

原创 2023-2024-1 20232803《Linux内核原理与设计》第九周作业

pich_next_task函数负责根据调度策略和调度算法选择下一个进程。context_switch函数实现进程切换。接着另开一个shell命令窗口,使用gdb进行调试。将初始的menu删除并重新克隆下载,之后进行编译。switch_to为宏定义,不能设置断点。接着开始运行,观察断点情况。通过以下命令运行QEMU。

2023-11-16 20:22:08 52 1

原创 2023-2024-1 20232803《Linux内核原理与分析》第八周作业

ELF (Executable and Linkable Format)即可执行的和可链接的格式,是一个目标文件格式的标准。ELF格式的文件用于存储Linux程序。ELF是一种对象文件的格式,用于定义不同类型的对象文件中都有什么内容、以什么样的格式放这些内容。ELF首部会描绘整个文件的组织结构,它还包括很多节(sections,是在ELF文件里用以装载内容数据的最小容器),这些节有些是系统定义好的,有些是用户在文件中通过。section命令自定义的,链接器会将多个输入目标文件中相同的节合并。

2023-11-12 20:10:35 53 1

原创 2023-2024-1 20232803《Linux内核原理与分析》第七周作业

函数可以创建进程,创建一个新进程的过程是:复制当前进程的信息,被复制的进程成为父进程,被创建的新进程成为子进程。父进程和子进程的绝大部分信息是完全一样的,但是有些信息需要不同,比如pid的值和内核堆栈。然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来的进程的值不同。系统调用把当前进程又复制了一个子进程,也就是一个进程变成了两个进程,两个进程执行相同的代码,只是。结构,然后从父进程那里继承一些数据, 并把新的进程插入到进程树中, 以待进行进程管理。,是对进程控制的唯一手段也是最有效的手段。

2023-11-05 17:48:04 72

原创 2023-2024-1 20232803《Linux内核原理与分析》第六周作业

传递来的系统调用号,来寻找相应的系统调用处理函数。系统调用本质上是一种特殊的。是Linux中所有系统调用的入口点,每个系统调用都至少需要有一个参数,即由。处设置了断点,执行后此时在该处停了下来,如下图。函数中添加这两个函数的调用命令,如下图。编译完成后,在QEMU中使用。然后再另打开一个窗口,通过以下命令使用。处设置断点,并继续执行,如下图。两个函数,函数内容为上周作业中。可以看到这两条命令已被添加。先使用以下命令运行QEMU。命令查看我们新增的命令。然后在MenuOS中输入。

2023-10-28 19:16:21 104

原创 2023-2024-1 20232803《Linux内核原理与分析》第五周作业

系统调用是系统提供给应用程序的一组接口,用于访问底层硬件和资源。系统调用在计算机系统中的作用是允许应用程序与操作系统进行交互,以完成各种任务。在Linux中,系统调用是通过软中断的方式实现的。在较早的Linux系统中,通过int 0x80汇编指令来触发系统调用。将所需的系统调用号放入寄存器eax中。依次将系统调用的参数放入寄存器ebxecxedxesiedi和ebp中。参数的寄存器分配顺序和个数取决于特定的系统调用和调用约定。使用int 0x80指令触发系统调用。指令执行后,处理器会。

2023-10-22 11:24:25 61 1

原创 2023-2024-1 20232803《Linux内核原理与分析》第四周作业

其中,init_task在创建了init进程后,调用cpu_idle()后演变为idle进程,在init_task演变为idle进程后,执行一次调度,init进程运行,1号内核线程负责执行内核的部分初始化工作及进行系统配置,然后调用do_execve加载init程序,演变成init进程(用户态1号进程),init进程是内核启动的第一个用户态进程。start_kernel是一切的起点,在此函数调用之前,内核代码主要是用汇编语言写的,用于硬件的初始化工作,为C代码的运行设置环境。,运行后结果如下图,可以看到。

2023-10-14 21:55:06 60 1

原创 2023-2024-1 20232803 《Linux内核原理与分析》第三周作业

在本次实验中,我通过修改Linux内核代码,完成了一个简单的时间片轮转多道程序。通过本次实验,我对Linux内核进程的管理与调度有了更为深刻的了解与认识,加深了我对操作系统相关知识的理解与掌握,让我更好地理解操作系统内部的工作流程与原理,为今后继续学习Linux打下坚实的基础。可以看到,在qemu窗口中,my_start_kernel正在不断地执行,而my_timer_handler时钟中断处理程序周期性执行。编译完成之后,重新启动。首先通过以下命令,在。目录下重新编译代码。

2023-10-04 20:56:07 56

原创 2023-2024-1 20232803《Linux内核原理与分析》第二周作业

在本周的学习过程中,我对操作系统以及国产操作系统有了进一步的了解与认识,并且对冯·诺依曼体系结构和x86与ARM64的汇编语言有了更深入的理解,为今后Linux的学习打下了基础。此外,在实验中,我通过在不同架构的主机上反编译C语言程序,对比了x86汇编语言和ARM64汇编语言的差异,深入理解了C语言程序在计算机上的工作原理。假定堆栈为空的情况下,EBP和ESP寄存器都指向栈底,即标号为0的存储单元。需要注意的是,x86架构栈地址是向下增长的,即栈空间的地址逐渐减小。这样,一个简单的c语言程序就编写完成了。

2023-09-24 20:06:59 64 1

原创 2023-2024-1 20232803《Linux内核原理与分析》第一周作业

Linux就是一个操作系统,主要由系统调用和内核组成。Unix/Linux本身没有图形界面,我们看到的图形界面实际是运行在Linux系统上的一套软件Linux上的这套软件是X.Org,其为X架构规范的一个实现体。换言之,它是实现了X协议规范的一个提供图形界面服务的服务器。只有服务器还不能够实现一个完整的桌面环境,还需要一个客户端,称为X Client。

2023-09-17 21:41:39 110 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除