国产成人毛片毛片久久网_国产午夜激无码av毛片不_国产乱对白精彩在线播放_av资源站中文字幕_亚洲男人的天堂网站_国产成 人 综合 亚洲网_中国国产激情一区_少妇一级淫片免费放_亚洲一本大道av久在线播放_免费观看美女裸体网站

安全播報(bào)

防御吧作為15年知名老牌域名服務(wù)商,CNNIC和CANN雙認(rèn)證域名注冊(cè)商,已經(jīng)
持續(xù)為500多萬(wàn)個(gè)域名提供服務(wù),包括智能DNS/自由轉(zhuǎn)移/隱私保護(hù)等服務(wù)!
Linux系統(tǒng)安全加固防攻擊技術(shù)
2021-07-05 16:02:22 【

Linux系統(tǒng)安全加固防攻擊技術(shù)

一、前言

本系列文檔包括三個(gè)部分,分別是《針對(duì)Linux系統(tǒng)的攻擊》、《Linux系統(tǒng)安全加固》和《Linux系統(tǒng)入侵排查》。編寫這些文檔的目的,是從攻和防的角度分別對(duì)Linux系統(tǒng)相關(guān)的安全技術(shù)進(jìn)行介紹,使初級(jí)水平的網(wǎng)絡(luò)安全從業(yè)者對(duì)Linux操作系統(tǒng)的脆弱性檢查、安全加固、應(yīng)急響應(yīng)等安全服務(wù)工作產(chǎn)生更清晰的認(rèn)識(shí)。

在前面一篇文章《針對(duì)Linux系統(tǒng)的攻擊》中,介紹了攻擊者對(duì)Linux系統(tǒng)可能發(fā)起什么樣的攻擊。本文是系列文檔的第二部分,在本文檔中,針對(duì)這些攻擊行為,給出在CentOS 7系統(tǒng)中進(jìn)行相應(yīng)安全加固的基本步驟和方法。


相關(guān)操作系統(tǒng)及IP地址

操作系統(tǒng)

IP地址

作用

manjaro

192.168.242.1

宿主機(jī)

CentOS 7 x64

192.168.242.132

被安全加固的虛擬機(jī)

Ubuntu 1804

192.168.242.134

輔助測(cè)試的虛擬機(jī)


二、Linux系統(tǒng)安全加固

(一)防口令破解

1. 處理弱口令賬戶

加固要求:

當(dāng)前user1用戶的口令為弱口令,修改該口令,使其符合長(zhǎng)度和復(fù)雜性要求。


加固方法:

passwd user1 //為用戶設(shè)置強(qiáng)壯的口令




驗(yàn)證效果:

重新以u(píng)ser1身份連接到服務(wù)器,以新口令登錄,確定其可成功登錄。


2. 處理與系統(tǒng)運(yùn)行維護(hù)無(wú)關(guān)的賬戶

加固要求:

系統(tǒng)存在與系統(tǒng)運(yùn)行、維護(hù)工作無(wú)關(guān)的賬戶,名為user1,根據(jù)需要,將其鎖定或刪除。


加固方法:

usermod -L user1 //鎖定賬戶

userdel user1 //刪除用戶


驗(yàn)證效果:

查看user1用戶的狀態(tài)






返回“密碼已被鎖定”,說(shuō)明賬戶處于鎖定狀態(tài)。

若返回“未知用戶名”,則user1已被刪除。


3. 限定口令長(zhǎng)度和復(fù)雜度

加固要求:

設(shè)置口令策略,滿足長(zhǎng)度和復(fù)雜度要求。要求長(zhǎng)度8位以上,口令中包含大寫字母、小寫字母、數(shù)字、特殊字符,每種字符至少一個(gè)。


加固方法:

//限制口令最短8位

authconfig --passminlen=8 --update

//限制口令至少包含4種字符

authconfig --passminclass=4 --update


驗(yàn)證效果:

創(chuàng)建測(cè)試用戶,為其設(shè)置不符合長(zhǎng)度和復(fù)雜度要求的口令




系統(tǒng)首先提示口令長(zhǎng)度不夠,之后提示字符類型少于4種。說(shuō)明本項(xiàng)加固成功。


4. 限定口令生存周期

加固要求:

限制口令的最長(zhǎng)使用期限為90天,口令的最短使用期限為3天,口令到期前15天發(fā)出警告。


加固方法:

//編輯文件,修改文件內(nèi)容

vi /etc/login.defs

設(shè)置PASS_MAX_DAYS為90,

設(shè)置PASS_MIN_DAYS為3,

設(shè)置PASS_WARN_AGE為15

保存退出


驗(yàn)證效果:

cat /etc/login.defs | grep '^PASS_' //查看相關(guān)參數(shù)的值


5. 設(shè)置登錄失敗鎖定

加固要求:

用戶遠(yuǎn)程登錄驗(yàn)證連續(xù)超過(guò)5次失敗的,鎖定賬號(hào)30分鐘


加固方法:

//修改配置文件,在#%PAM-1.0的下面,即第二行添加內(nèi)容

vim /etc/pam.d/sshd

auth required pam_tally2.so deny=5 unlock_time=1800 even_deny_root root_unlock_time=1800

保存退出


驗(yàn)證效果:

ssh user1@192.168.242.132

故意連續(xù)6次輸入錯(cuò)誤口令,最后輸入正確口令,發(fā)現(xiàn)已經(jīng)無(wú)法登錄。

在服務(wù)器上查看鎖定情況:




說(shuō)明登錄失敗鎖定機(jī)制已經(jīng)生效。


(二)防服務(wù)漏洞

1. 更改ssh服務(wù)端口

加固要求:

更改ssh服務(wù)的監(jiān)聽端口為2222


加固方法:

//編輯配置文件

vi /etc/ssh/sshd_config

取消Port行的注釋,將Port的值從22修改為2222

保存退出

//重啟ssh服務(wù)

systemctl restart sshd


驗(yàn)證效果:

//訪問(wèn)遠(yuǎn)程主機(jī)ssh服務(wù)默認(rèn)的22端口

ssh user1@192.168.242.132

連接被拒絕

//指定訪問(wèn)遠(yuǎn)程主機(jī)的ssh服務(wù)的2222端口

ssh -p 2222 user1@192.168.242.132

允許登錄。說(shuō)明ssh服務(wù)端口修改成功。


2. 限制ssh連接的源地址范圍

加固要求:

只允許192.168.242.0/24網(wǎng)段訪問(wèn)ssh服務(wù)。


加固方法:

//修改配置文件,在末尾加入一行

vi /etc/hosts.deny

sshd:ALL

保存退出


//修改配置文件,在末尾加入一行

vi /etc/hosts.allow

sshd:192.168.242.0/255.255.255.0:allow

保存退出


驗(yàn)證效果:

從其它虛擬機(jī)訪問(wèn)CentOS 7




客戶端地址為192.168.242.134,連接被重置,說(shuō)明ssh客戶端地址限制生效了,加固成功。


3. 禁用不必要的服務(wù)

加固要求:

停止并禁用不需要的服務(wù),如cups,減小系統(tǒng)的受攻擊面。


加固方法:

//停止服務(wù)

systemctl stop cups

//禁用服務(wù)

systemctl disable cups


驗(yàn)證效果:

//查看服務(wù)是否被禁用

systemctl is-enabled cups

//查看服務(wù)當(dāng)前是否正在運(yùn)行

systemctl status cups




若服務(wù)的自啟動(dòng)配置為disabled或masked,服務(wù)的運(yùn)行狀態(tài)為inactive,則加固成功。


4. 啟用selinux

加固要求:

SELinux使用強(qiáng)制訪問(wèn)控制機(jī)制,可最大限度地減小系統(tǒng)中服務(wù)進(jìn)程可訪問(wèn)的資源。要求開啟selinux,設(shè)置工作模式為enforcing,策略為target。


加固方法:

vi /etc/selinux/config //編輯配置文件

設(shè)置

SELINUX=enforcing

SELINUXTYPE=targeted

保存退出,重啟后生效。


驗(yàn)證效果:

sestatus //查看selinux的工作狀態(tài)



SELinux status:enabled

Loaded Policy name:Target

說(shuō)明加固成功。


5. 啟用審計(jì)服務(wù)

加固要求:

啟動(dòng)auditd服務(wù),并設(shè)置為開機(jī)自動(dòng)運(yùn)行。


加固方法:

//手動(dòng)啟動(dòng)服務(wù)

systemctl start auditd

//設(shè)置開機(jī)自動(dòng)運(yùn)行

systemctl enable auditd


驗(yàn)證效果:

//查看auditd服務(wù)狀態(tài)

systemctl status auditd

//查看是否自啟動(dòng)

systemctl is-enabled auditd

若auditd服務(wù)被設(shè)置為自動(dòng)啟動(dòng)且已經(jīng)運(yùn)行,則加固成功。


(三)防權(quán)限提升

1. 管理sudo權(quán)限

加固要求:

當(dāng)前user1用戶被加入到了wheel用戶組,而系統(tǒng)允許wheel組通過(guò)sudo執(zhí)行任何命令,F(xiàn)要求取消user1用戶通過(guò)sudo執(zhí)行任何命令的權(quán)限,只允許sudo執(zhí)行特定的命令。


加固方法:

gpasswd -d user1 wheel //將user1從wheel組中刪除

visudo //編輯配置文件,給予user1通過(guò)sudo執(zhí)行特定命令的權(quán)限


推薦閱讀:《CentOS 7系統(tǒng)配置sudo策略(附sudo提權(quán)演示)》

https://www.freebuf.com/articles/system/243526.html


驗(yàn)證效果:

sudo ls //user1用戶通過(guò)sudo執(zhí)行未授權(quán)的命令

若出現(xiàn)提示,稱用戶不在sudoers文件中,說(shuō)明sudo權(quán)限配置加固成功。


2. 啟用sudo日志

加固要求:

啟用sudo日志。


加固方法:

第一步,創(chuàng)建sudo.log文件

//創(chuàng)建日志文件

touch /var/log/sudo.log

第二步,修改rsyslog配置文件

//在配置文件最后添加一行

vi /etc/rsyslog.conf

local2.debug/var/log/sudo.log //空白處不能用空格鍵,必需用tab鍵

保存退出

//重啟rsyslog服務(wù)

systemctl restart rsyslog

第三步,修改sudo配置文件

visudo //編輯sudo配置

Defaults logfile=/var/log/sudo.log

Defaults loglinelen=0

Defaults !syslog

保存退出


驗(yàn)證效果:

cat /var/log/sudo.log //執(zhí)行sudo命令后查看sudo日志文件




如果產(chǎn)生了日志條目,說(shuō)明配置成功。


3. 管理suid/sgid文件

加固要求:

系統(tǒng)中存在設(shè)置了suid的vim程序(/usr/bin/vim),存在提權(quán)風(fēng)險(xiǎn),要求取消該程序文件的suid權(quán)限。


加固方法:

chmod u-s /usr/bin/vim


驗(yàn)證效果:

ls -l /usr/bin/vim

若文件權(quán)限中沒有suid標(biāo)識(shí)位,說(shuō)明加固成功。


4. 限制su的使用

加固要求:

除了user1用戶之外,其它用戶禁止使用su命令。


加固方法:

vi /etc/pam.d/su //編輯配置文件,加入下面的行

auth required pam_wheel.so use_uid

保存退出

vi /etc/group //編輯配置文件,將user1加入wheel組

wheel:x:10:root,user1

保存退出


驗(yàn)證效果:





以u(píng)ser1用戶之外的普通用戶身份登錄,之后執(zhí)行su命令,若返回“su: 拒絕權(quán)限”,則說(shuō)明加固成功。


5. 設(shè)置嚴(yán)格的umask

加固要求:

將用戶默認(rèn)的umask值設(shè)置為027


加固方法:

編輯/etc/bashrc、/etc/profile、/etc/profile.d/*.sh等文件,將umask參數(shù)的值改為027:

umask=027


驗(yàn)證效果:






創(chuàng)建文件,若文件的權(quán)限為640,則說(shuō)明加固成功。


6. 清除沒有屬主的目錄和文件

加固要求:

查找并處理系統(tǒng)中無(wú)屬主或無(wú)屬組的目錄和文件


加固方法:

第一步,查找無(wú)屬主或無(wú)屬組的目錄/文件

find / \( -nouser -o -nogroup \) -exec ls -al {} \;

第二步,對(duì)查找到的文件進(jìn)行處理,不再使用的文件可刪除,有用的文件可將其屬主或?qū)俳M修改為現(xiàn)有的某個(gè)用戶。


驗(yàn)證效果:

系統(tǒng)中找不到無(wú)屬主或無(wú)屬組的目錄/文件,則加固成功。


7. 注銷時(shí)清除命令歷史

加固要求:

用戶注銷時(shí)清除該用戶的歷史命令


加固方法:

//注銷時(shí)清除root用戶的歷史命令

vi /root/.bash_logout //編輯配置文件,加入下面的命令

echo > /root/.bash_history

保存退出

//注銷時(shí)清除user1用戶的歷史命令

vi /home/user1/.bash_logout //編輯配置文件,加入下面的命令

echo > /home/user1/.bash_history

保存退出

//編輯用戶配置模板,這樣以后創(chuàng)建的用戶在注銷時(shí)也會(huì)刪除歷史命令

vi /etc/skel/.bash_logout //編輯配置文件,加入下面的命令

echo > $HOME/.bash_history

保存退出


驗(yàn)證效果:

注銷用戶,重新登錄,執(zhí)行history命令查看歷史命令,若看不到注銷前的歷史命令,則說(shuō)明加固成功。


8. 禁用coredump

加固要求:

禁用系統(tǒng)的core dump功能


加固方法:

vi /etc/security/limits.conf //編輯配置文件,在文件末尾加入:

* hard core 0

保存退出

vi /etc/sysctl.conf //編輯配置文件,加入下面的內(nèi)容

fs.suid_dumpable = 0

保存退出。重啟后參數(shù)生效

sysctl -w fs.suid_dumpable=0 //參數(shù)立即生效


驗(yàn)證效果:

查看配置文件,確認(rèn)配置。9. 執(zhí)行安全更新

加固要求:

安裝可用的安全更新。


加固方法:

yum update --security //安裝安全更新包


驗(yàn)證效果:

yum check-update --security //檢查安全更新




若返回“No packages needed for security;”,說(shuō)明安全更新已完成。


(四)防木馬后門

1. 部署主機(jī)入侵檢測(cè)軟件

加固要求:

安裝部署AIDE入侵檢測(cè)軟件,并定期檢查文件完整性。


加固方法:

yum install aide //在線安裝AIDE

aide --init //生成包含文件系統(tǒng)中所有文件的數(shù)據(jù)庫(kù)

cp /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz //安裝數(shù)據(jù)庫(kù)

aide -c /etc/aide.conf --check //進(jìn)行完整性檢查

aide -c /etc/aide.conf --limit /bin --check //對(duì)指定目錄進(jìn)行完整性檢查


推薦閱讀:《CentOS 8系統(tǒng)安裝配置AIDE入侵檢測(cè)軟件檢查文件完整性》

https://www.freebuf.com/sectool/265391.html


驗(yàn)證效果:

生成散列數(shù)據(jù)庫(kù)后對(duì)文件進(jìn)行修改,運(yùn)行aide,確認(rèn)其可以檢測(cè)到文件的變化。


2. 開啟網(wǎng)絡(luò)防火墻firewalld

加固要求:

開啟網(wǎng)絡(luò)防火墻,只允許遠(yuǎn)程主機(jī)訪問(wèn)本地的特定端口,如22和80端口。


加固方法:

systemctl start firewalld //啟動(dòng)firewalld服務(wù)

systemctl enable firewalld //設(shè)置服務(wù)開機(jī)自啟

firewall-cmd --add-service=http //允許訪問(wèn)http服務(wù)

firewall-cmd --add-service=http --permanent //持久化(寫入配置文件)

firewall-cmd --add-service=ssh

firewall-cmd --add-service=ssh --permanent

firewall-cmd --remove-service=dhcpv6-client //刪除不需要的服務(wù)

firewall-cmd --remove-service=dhcpv6-client --permanent

firewall-cmd --list-service //查看firewalld允許的服務(wù)

firewall-cmd --list-service --permanent //查看配置文件允許的服務(wù)


推薦閱讀:《CentOS 7系統(tǒng)使用firewalld防火墻創(chuàng)建包過(guò)濾規(guī)則》

https://www.freebuf.com/sectool/237569.html


驗(yàn)證效果:

//查看服務(wù)器本地的firewalld服務(wù)是否設(shè)置為自動(dòng)啟動(dòng)

systemctl is-enabled firewalld

//遠(yuǎn)程掃描服務(wù)器端口

nmap 192.168.242.132

若只開放了22和80端口,說(shuō)明firewalld加固成功。


3. 限制crontab使用者

加固要求:

禁止root之外的用戶以crontab方式運(yùn)行計(jì)劃任務(wù)。


加固方法:

touch /etc/cron.allow && vi /etc/cron.allow //創(chuàng)建并編輯文件

在文件的第一行寫入root,保存退出


驗(yàn)證效果:






普通用戶嘗試創(chuàng)建crontab任務(wù),若無(wú)法創(chuàng)建,則加固成功


(五)防痕跡清除

1. 啟用rsyslog服務(wù)

加固要求:

啟動(dòng)rsyslog服務(wù)并設(shè)置為開機(jī)自動(dòng)運(yùn)行


加固方法:

systemctl enable rsyslog //設(shè)置自動(dòng)啟動(dòng)

systemctl start rsyslog //手動(dòng)啟動(dòng)服務(wù)


驗(yàn)證效果:

logger -p local1.notice "This is a test for rsyslog." //執(zhí)行命令

在/var/log/messages文件中若能可以看到相應(yīng)的日志,說(shuō)明rsyslog服務(wù)工作正常,加固成功。


2. 配置遠(yuǎn)程日志服務(wù)器

加固要求:

配置遠(yuǎn)程rsyslog日志服務(wù)器


加固方法:

vi /etc/rsyslog.conf //編輯配置文件,在末尾加入一行

*.* @192.168.242.1

作用是將全部日志轉(zhuǎn)發(fā)到192.168.242.1的UDP 514端口。

保存退出。


推薦閱讀:《CentOS 7系統(tǒng)配置rsyslog服務(wù)發(fā)送和接收日志》

https://www.freebuf.com/articles/es/246659.html


驗(yàn)證效果:

在日志服務(wù)器192.168.242.1上監(jiān)聽TCP 514端口

tcpdump -i vmnet8 udp port 514

當(dāng)被加固主機(jī)執(zhí)行下面的命令時(shí),192.168.242.1主機(jī)的UDP 514端口將收到一個(gè)包

logger -p local1.notice "This is a test for rsyslog."




目標(biāo)主機(jī)的UDP 514端口收到數(shù)據(jù),說(shuō)明日志服務(wù)器配置成功。


3. 配置NTP時(shí)間同步

加固要求:

定期(每小時(shí)一次)與遠(yuǎn)程N(yùn)TP服務(wù)器(time1.aliyun.com)同步時(shí)間,以保證日志時(shí)間的準(zhǔn)確性。


加固方法:

crontab -u root -e //編輯root賬戶的計(jì)劃任務(wù)

0 1 * * * /usr/sbin/ntpdate time1.aliyun.com

保存退出


驗(yàn)證效果:

crontab -u root -l //查看root的crontab,確保存在ntp更新的指令

/usr/sbin/ntpdate time1.aliyun.com //手工執(zhí)行時(shí)間同步

以上命令若返回成功的結(jié)果,則說(shuō)明加固成功。


4. 加強(qiáng)審計(jì)日志文件權(quán)限

加固要求:

為audit日志文件設(shè)置嚴(yán)格的權(quán)限,避免日志信息被惡意操作


加固方法:

chmod 700 /var/log/audit

chmod 600 /var/log/audit/audit.log

chmod 400 /var/log/audit/audit.log.*


驗(yàn)證效果:

ls -ld /var/log/audit //查看日志目錄權(quán)限

ls -l /var/log/audit //查看日志文件權(quán)限


(六)防物理攻擊

1. bootloader安全配置

加固要求:

要求用戶在系統(tǒng)引導(dǎo)程序執(zhí)行之前輸入boot口令,避免非授權(quán)用戶改變啟動(dòng)參數(shù)或者改變引導(dǎo)分區(qū),從而降低系統(tǒng)安全性被削弱的風(fēng)險(xiǎn)(如在啟動(dòng)時(shí)關(guān)閉selinux、進(jìn)入單用戶模式等)


加固方法:

grub2-setpassword


驗(yàn)證效果:

重啟服務(wù)器,在出現(xiàn)開機(jī)選擇菜單時(shí)按e,若出現(xiàn)輸入用戶名和密碼的提示,則說(shuō)明加固成功。





2. 禁用usb設(shè)備

加固要求:

禁止在服務(wù)器上使用usb存儲(chǔ)設(shè)備,如U盤或移動(dòng)硬盤


加固方法:

第一步,偽安裝

cd /etc/modprobe.d/

touch block_usb.conf && vi block_usb.conf //創(chuàng)建并編輯配置文件,加入一行

install usb-storage /bin/true

保存退出


第二步,轉(zhuǎn)移usb-storage驅(qū)動(dòng)文件

uname -r //查看當(dāng)前使用的內(nèi)核版本

cd /lib/modules/3.10.0-1062.18.1.el7.x86_64/kernel/drivers/usb/storage/

mv usb-storage.ko.xz /root


第三步,對(duì)驅(qū)動(dòng)文件進(jìn)行加密

cd /root

zip -q -r -P biomind usb-storage-driver.zip usb-storage.ko.xz

rm -rf usb-storage.ko.xz

這樣,usb存儲(chǔ)設(shè)備的驅(qū)動(dòng)就無(wú)法使用了。當(dāng)需要使用的時(shí)候,將驅(qū)動(dòng)文件解壓出來(lái),放回到原先的目錄即可。


驗(yàn)證效果:

將USB存儲(chǔ)設(shè)備插入系統(tǒng)后無(wú)法識(shí)別,說(shuō)明加固成功,


三、總結(jié)

針對(duì)上一篇文章介紹的針對(duì)Linux系統(tǒng)的攻擊方法,本文相對(duì)應(yīng)地介紹了在Linux系統(tǒng)進(jìn)行安全加固的方法。應(yīng)定期對(duì)系統(tǒng)進(jìn)行安全加固操作,以最大程度地降低Linux系統(tǒng)自身的脆弱性,減少系統(tǒng)被入侵的風(fēng)險(xiǎn)。在下一篇文章中,將介紹針對(duì)攻擊者的各類攻擊方式所采取的入侵排查方法。


】【打印關(guān)閉】 【返回頂部
分享到QQ空間
分享到: 
上一篇微軟確認(rèn)“PrintNightmare”是新.. 下一篇微軟警告攻擊者正肆意利用Windows..

立足首都,輻射全球,防御吧專注云防御及云計(jì)算服務(wù)15年!

聯(lián)系我們

服務(wù)熱線:13051179500 18910191973
企業(yè)QQ:1245940436
技術(shù)支持:010-56159998
E-Mail:xihedata.com
Copyright ? 2003-2016 fangyuba. 防御吧(完美解決防御與加速) 版權(quán)所有 增值許可:京B2-20140042號(hào)
售前咨詢
公司總機(jī):18910191973
24小時(shí)電話:010-56159998
投訴電話:18910191973
值班售后/技術(shù)支持
售后服務(wù)/財(cái)務(wù)
備案專員
緊急電話:18610088800