20199132-《网络攻防实践》第八周作业

1.实践内容

linux系统结构

  • linux进程与线程管理:采用抢占式多用户多进程模式,多个进程并发活动,

  • 内存管理机制:允许多个进程安全地共享物理内存区域。并支持虚拟内存。

  • linux文件系统管理机制:使用了虚拟文件管理VFS,支持数十种不同类型的逻辑文件系统。

  • linux设备控制机制:使用设备驱动程序来进行管理。支持三类硬件设备:字符设备、块设备和网络设备。

  • linux网络机制:网络接口分为网络协议栈和网络驱动程序。网络协议负责网络传输协议。

  • 系统调用机制:内核模块运行在CPU的核心态,而应用程序运行于用户态,系统调用通过软中断实现。

linux操作系统安全机制

  • linux身份认证机制
    创建多个用户组来使用,保证安全。linux用户:root用户,普通用户,系统用户。用户信息均保存在系统/etc/passwd文件,加密口令文件存放在/etc/shadow文件中。
  • linux用户组:具有相同特征的用户账号集合。用户信息保存在/etc/group中,加密口令自保存在/etc/gshadow文件中
  • linux本地登录用户认证机制
    init进程启动getty,getty执行登录进程,认证成功后,登录进程会fork相应用户shell的子进程。
    登录login进程Crypt()函数验证输入口令,并使用MD5进行加密。
  • linux远程登录用户认证机制
    使用SSH服务进行远程用户登录与网络访问。包括口令身份认证与非对称密钥的身份认证。
  • PAM:可插入身份认证模块,作为验证用户身份的灵活与标准的方法。

linux授权与访问控制机制

  • linux的一切皆是文件。并且每个文件都拥有其所有者,访问权限通过10个标志位来进行设置。
  • 文件特殊权限:SUID允许可执行文件在运行时刻从运行者身份提升至文件所有者权限。SGID任意存取整个用户组的系统资源。
  • linux访问控制机制不足:无法做到更细粒度的权限控制。

Linux安全审计

包括日志文件:连接时间日志,进程统计日志,错误日志记录

linux系统远程攻防技术

  1. 对系统网络服务的身份认证过程涉及的用户口令字进行猜测攻击。
  2. 发掘漏洞进行利用
  3. 使用网页木马、欺诈邮件等手段
  4. 实施网络嗅探监听器时,容易被特意数据包攻击。

远程口令字猜测攻击

工具包括:Brutus,THC Hydra,Cain and Abel
攻击包括:SSH、http、ftp、snmp、pop、mysql等用户账号收到攻击
可以通过使用更严格的口令字管理制度来加强安全。

远程渗透攻击

因为linux的开源性,所以公开后大多数漏洞都会被及时修复。

  • 网络协议栈的攻击:Linux内核中的网络协议栈实现是每个网络服务所依赖的基础平台,因此一旦这些代码中存在具有远程代码执行危害后果的安全漏洞。
  • LAMP Web网站构建解决方案中的网络服务:最流行的web网站构建方案,其服务扩展模块是linux系统主要的远程渗透攻击目标。
  • FTP、Samba等文件共享服务:常见的内部文件服务器,是黑客们破解的必须尝试的攻击通道。samba用来让LInux等类UNIX操作系统与微软的Windows系统smb/cifs网络协议相连接的网络服务。
  • 电子邮件收发服务:sendmail服务是类UNIX操作系统上最为流行的电子邮件收发服务,但不安全。
  • 其他网络服务:openssh、OpenSSL、nsf、snmp、sunrpc、bind、x-window
  • 安全防范措施:禁用不必要的网络服务、选用更安全的网络协议和服务软件,并使用最佳安全实践进行部署,及时更新网络服务版本,使用防火墙,建立入侵检测与应急响应计划流程。

linux系统本地安全攻防技术

  • 本地特权提升:通过su或者sudo命令提升root用户账户。黑客破解出root用户的口令,然后执行su或sudo命令进行提升。攻击用户态SUID特权提升漏洞以及攻击Linux内核代码特权提升漏洞。
  • linux用户口令字破解:密码一般采用MD5哈希算法、blowfish加密算法、SHA哈希算法。
  • 利用用户态SUID程序漏洞进行特权提升,程序被设置了SUID特殊权限位,一旦设置了SUID位之后,再次执行程序,有效的UID变为所有者用户ID。
  • 抹茶linux系统上的消踪灭迹:在/var/log目录下改动messages、auth、secure、wtmp和xferlog日志文件。

2.实践过程

实践一:使用Metaploit进行Linux远程渗透攻击

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

  1. 启用metasploit软件,根据个人喜好使用msfconsole、msfgui、msfweb之一:
  2. 使用exploit:exploit/multi/samba/usermap_script渗透攻击模块
  3. 选择攻击PAYLOAD为远程shell
  4. 设置攻击参数
  5. 执行攻击
  6. 查看是否得到正确的远程shell

实践二:攻防对抗实践

攻击方使用Metasploit渗透软件针对Linux Metasploitable靶机试试网络攻击,防御方在Metasploitable上使用wireshark捕获攻击流并分析出攻击者使用了哪个安全漏洞进行攻击。

  • 攻击方:使用Metasploit选择Metasploitable靶机中发现的漏洞进行渗透攻击,获得远程控制权,并尝试进一步获得Root权限。
  • 防守方:使用wireshark监听获得网络攻击的数据包文件,并结合wireshark分析攻击过程,获得攻击者的IP地址,目标IP端口、攻击发起时间、攻击利用漏洞、使用shellcode,以及成功之后在本地执行命令输入等信息

3.学习中遇到的问题与解决

4. 学习感想和体会

猜你喜欢

转载自www.cnblogs.com/wby1116/p/12745646.html