系统安全与应用【2】

1.开关机安全控制

1.1 GRUB限制

限制更改GRUB引导参数

通常情况下在系统开机进入GRUB菜单时,按e键可以查看并修改GRUB引导参数,这对服务器是一个极大的威胁。
可以为GRUB 菜单设置一个密码,只有提供正确的密码才被允许修改引导参数。

实例:GRUB 菜单设置密码

(1)根据提示设置GRUB菜单的密码;

cpp 复制代码
[root@mwq ~]# grub2-mkpasswd-pbkdf2   #根据提示设置GRUB菜单的密码
输入口令:
Reenter password:    #此处设置的密码就是登录系统时,输入的密码,用户名和密码正确才可以登录系统,修改GRUB引导参数
PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.2E11090ED7F21187E36302A2F34296AAC411240DE33B9E997A58DF4CE3BF5CA0CF0241882DD1A6B509C6F22BAD6E302DBC77909BF7685614D29D9954B170545E.5903DA571D3EBD55FA35B9D45595C552EA2AE017C11F3C47020CA158FFD4609C3ABCDFF39C000AACC175831EFA2C105462D4E6FC2B2AAF128AEE3CCA2FDD4E7A   #加密生成的密码字符串

2)备份密码字符串、grub.cfg文件以及00_header文件

bash 复制代码
[rootmwq ~]# vim pass.txt    #将密码字符串复制到pass.txt文件中
[root@mwq ~]# cat pass.txt
ha512.10000.2E11090ED7F21187E36302A2F34296AAC411240DE33B9E997A58DF4CE3BF5CA0CF0241882DD1A6B509C6F22BAD6E302DBC77909BF7685614D29D9954B170545E.5903DA571D3EBD55FA35B9D45595C552EA2AE017C11F3C47020CA158FFD4609C3ABCDFF39C000AACC175831EFA2C105462D4E6FC2B2AAF128AEE3CCA2FDD4E7A
[root@mwq ~]# cd /boot/grub2
[root@mwq /boot/grub2]# ls
device.map  fonts  grub.cfg  grubenv  i386-pc  locale
[root@mwq /boot/grub2]# cp grub.cfg grub.cfg,bak   #将grub.cfg文件中的内容备份到grub.cfg,bak文件中
[root@mwq/boot/grub2]# cd /etc/grub.d/
[root@mwq /etc/grub.d]# cp 00_header{,.bak}  #将00_header文件中的内容备份到00_header.bak文件中

3)设置能够修改GRUB菜单的用户名和密码

bash 复制代码
[root@mwq /etc/grub.d]# vim 00_header
echo else
make_timeout "${GRUB_HIDDEN_TIMEOUT}" "${GRUB_TIMEOUT}" 
 
fi
cat << EOF
set superusers="root"    #设置能够修改GRUB菜单的用户名为root
password_pbkdf2 root grub.pbkdf2.sha512.10000.2E11090ED7F21187E36302A2F34296AAC411240DE33B9E997A58DF4CE3BF5CA0CF0241882DD1A6B509C6F22BAD6E302DBC77909BF7685614D29D9954B170545E.5903DA571D3EBD55FA35B9D45595C552EA2AE017C11F3C47020CA158FFD4609C3ABCDFF39C000AACC175831EFA2C105462D4E6FC2B2AAF128AEE3CCA2FDD4E7A  #设置并保存经过加密生成的密码
EOF

4)生成新的grub.cfg文件

bash 复制代码
[root@mwq /etc/grub.d]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-1160.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-675c23e85f174b7ca25013149d0b69ad
Found initrd image: /boot/initramfs-0-rescue-675c23e85f174b7ca25013149d0b69ad.img
done

2.终端登录安全控制

(1) 限制root只在安全终端登录

指定虚拟主机,将无法登录到系统;

(2)禁止普通用户登录

touch /etc/nologin:创建该文件后,普通用户将无法再登录到系统中

rm -f /etc/nologin : 删除该文件后,其他普通文件仍然又可以继续登录到系统

3.弱口令检测

Joth the Ripper,JR​实验:

将john压缩工具包拉入虚拟机中

(1)解压工具包

(2)切换到src子目录

(3)进行安装 ​**(4)准备待破解的密码文件**

将/etc/shadow下的文件复制到当前目录下的shadow.txt文件中 ​**(5)执行暴力破解** ​password.lst 该文件保存密码字典

(6)查看已破解出的账户列表

./john --show shadow.txt

4.网络端口扫描

4.1 nmap命令

安装nmap

复制代码
rpm -qa |grep nmap      查看nmap

yum install -y nmap      安装nmap

nmap命令常用选项

-p: 指定扫描的端口。

n: 禁用反向DNS解析(以加快扫描速度)

S: TCP的SYN扫描(半开扫描),只向目标发出SYN数据包,如果收到SYN/ACK响应包就认为目标端口正在监听,并立即断开连接;否则认为目标端口并未开放。

-sT: TCP连接扫描,这是完整的TCP扫描方式(默认扫描类型)用来建立一个TCP连接,如果成功则认为目标端口正在监听服务。否则认为目标端口并未开放。

-sF: TCP的FIN扫描,开放的端口会忽略这种数据包,关闭的端口会回应RST数据包。许多防火墙只对sYN数据包进行简单过。而忽略了其他形式的TCP攻击包。这种类型的扫描可间接检测防火墙的健壮性。

-sU: UDP扫描,探测目标主机提供哪此UDP服务,UDP扫描的速度会比较慢。

-sP: ICMP扫描,类似于pina检测,快速判断目标主机是否存活,不做其他扫描。

-P0: 跳过ping检测,这种方式认为所有的目标主机是存活的,当对方不响应ICMP请求时,使用这种方式可以避免因无法 ping通而放弃扫描。

举例:

1、查看UDP端口

2、查看TCP端口

3、查看是否有80端口

4、扫描端口

netstat -lntp:以数字形式显示TCP处于监听状态的网络连接及端口信息 netstat -antp:以数字形式显示TCP所有状态下的网络连接及端口信息 ss -antp:以数字形式显示TCP所有状态下的网络连接及端口信息;(效果和netstat命令相同,但执行效率比netstat命令更高)

相关推荐
用户962377954483 天前
VulnHub DC-3 靶机渗透测试笔记
安全
叶落阁主4 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
用户962377954486 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机6 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机6 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954486 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star6 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954486 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher8 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行11 天前
网络安全总结
安全·web安全