秦道祥 高潤(rùn)生 秦銳
摘 要:落實(shí)信息系統(tǒng)網(wǎng)絡(luò)安全等級(jí)保護(hù)制度是高校信息化建設(shè)的工作之一。等保測(cè)評(píng)過程中主機(jī)安全普遍存在問題,本文從黑客攻防的角度,以S3A3G3三級(jí)等保要求為標(biāo)準(zhǔn),提出Linux操作系統(tǒng)主機(jī)安全加固的配置解決方案,能順利地完成信息系統(tǒng)等級(jí)保護(hù)工作并通過測(cè)評(píng),信息系統(tǒng)安全防護(hù)能力得到有效提升。
關(guān)鍵詞:網(wǎng)絡(luò)安全;等級(jí)保護(hù);Linux;主機(jī)加固
中圖分類號(hào):TP309 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1673-8454(2018)15-0088-04
一、引言
隨著《中華人民共和國(guó)網(wǎng)絡(luò)安全法》的實(shí)施,信息系統(tǒng)等級(jí)保護(hù)工作受到各單位越來越多的重視。開展信息安全等級(jí)保護(hù)工作可以保障網(wǎng)絡(luò)免受干擾、破壞或者未經(jīng)授權(quán)的訪問,防止網(wǎng)絡(luò)數(shù)據(jù)泄露或者被竊取、篡改,解決信息安全面臨的威脅和存在的問題,提高信息安全保障能力和水平,促進(jìn)信息化建設(shè)健康發(fā)展。主機(jī)安全是等級(jí)保護(hù)測(cè)評(píng)工作中的重要組成部分,筆者單位2017年度測(cè)評(píng)了7個(gè)信息系統(tǒng),在差距分析整改報(bào)告里,主機(jī)安全測(cè)評(píng)最高的43分,最低的21分,主機(jī)安全普遍存在重大安全隱患。由于操作系統(tǒng)是承載應(yīng)用業(yè)務(wù)的基礎(chǔ),修復(fù)過程中可能會(huì)導(dǎo)致業(yè)務(wù)中斷或升級(jí)失敗等多種問題,存在一定風(fēng)險(xiǎn),是等級(jí)保護(hù)整改過程中的難點(diǎn)。筆者在等保工作中探索出使用部署安全加固模板機(jī)后再對(duì)應(yīng)用業(yè)務(wù)進(jìn)行遷移的方式、完成信息系統(tǒng)的主機(jī)安全加固的方法,得到了測(cè)評(píng)中心肯定,為等保系統(tǒng)順利通過測(cè)評(píng)提供了解決方案。本文以Centos 6.5操作系統(tǒng)為例,基于S3A3G3標(biāo)準(zhǔn),提出對(duì)Linux服務(wù)器主機(jī)整改安全加固的解決的方案。
二、S3A3G3三級(jí)等級(jí)保護(hù)要求
根據(jù)《計(jì)算機(jī)信息系統(tǒng)安全保護(hù)等級(jí)劃分準(zhǔn)則》(GB 17859-1999)和《信息安全技術(shù)信息系統(tǒng)安全等級(jí)保護(hù)定級(jí)指南》(GB/T2224一2008),信息系統(tǒng)安全保護(hù)等級(jí)分5個(gè)安全等級(jí)。信息系統(tǒng)安全保護(hù)等級(jí)由兩個(gè)要素決定:等級(jí)保護(hù)對(duì)象受到破壞時(shí)所侵害的客體和對(duì)客體造成的侵害的程度,主要包括業(yè)務(wù)信息安全(S類),關(guān)注的是保護(hù)數(shù)據(jù)在存儲(chǔ)、傳輸、處理過程中不被泄漏、破壞和免受未授權(quán)的修改;系統(tǒng)服務(wù)安全(A類)關(guān)注的是保護(hù)系統(tǒng)連續(xù)正常運(yùn)行,避免因?qū)ο到y(tǒng)的未授權(quán)修改、破壞而導(dǎo)致系統(tǒng)不可用。簡(jiǎn)單說,S就是系統(tǒng)信息泄露或數(shù)據(jù)被篡改的影響程度,A就是服務(wù)器宕機(jī)的影響程度,G類(通用安全保護(hù)類)取這2個(gè)值中級(jí)別高的,定為最終的安全等級(jí)。根據(jù)等級(jí)保護(hù)對(duì)象受到破壞時(shí)的侵害和造成侵害的程度,高校和一般單位的信息系統(tǒng)最高只能定為三級(jí),即S3A3G3的級(jí)別。
三級(jí)等保的要求為:應(yīng)能夠在統(tǒng)一安全策略下防護(hù)系統(tǒng)免受來自外部有組織的團(tuán)體、擁有較為豐富資源的威脅源發(fā)起的惡意攻擊、較為嚴(yán)重的自然災(zāi)難,以及其他相當(dāng)危害程度的威脅所造成的主要資源損害;能夠發(fā)現(xiàn)安全漏洞和安全事件;在系統(tǒng)遭到損害后,能夠較快恢復(fù)絕大部分功能。三級(jí)等級(jí)保護(hù)基本要求六大類290項(xiàng),其中主機(jī)安有7類32項(xiàng)具體要求。等保主機(jī)安全基本要求框架結(jié)構(gòu)如圖1所示。
三、操作系統(tǒng)安全防御思路
Linux是一種開放源代碼、免費(fèi)使用和自由傳播的操作系統(tǒng),它能運(yùn)行主要的Unix工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議,它繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。高校多數(shù)的信息系統(tǒng)都是部署在Linux操作系統(tǒng)上。CentOS 是一個(gè)基于Red Hat Linux 提供的可自由使用源代碼的企業(yè)級(jí)Linux發(fā)行版本,可以提供一個(gè)安全、低維護(hù)、穩(wěn)定、高預(yù)測(cè)性、高重復(fù)性的 Linux 環(huán)境,本文以Centos 6.5版本為例。
操作系統(tǒng)管理計(jì)算機(jī)的資源,是用戶與計(jì)算機(jī)硬件之間的接口,控制整個(gè)系統(tǒng)運(yùn)行,是計(jì)算機(jī)、網(wǎng)絡(luò)及信息系統(tǒng)安全的基礎(chǔ)。操作系統(tǒng)可以實(shí)現(xiàn)用戶身份標(biāo)識(shí)和鑒別、訪問控制、最小特權(quán)的管理、信道保護(hù)、安全審計(jì)、內(nèi)存存儲(chǔ)保護(hù)、文件保護(hù)等功能。由于其在保護(hù)信息安全的特殊地位,已成為黑客攻擊和利用的重要目標(biāo)。操作系統(tǒng)的重要性如圖2所示。
做好網(wǎng)絡(luò)安全防護(hù),用白帽的話來說“不知攻,焉知守”,成功防御的一個(gè)基本組成部分就是要了解敵人,了解黑客攻擊的過程和方法,才能制訂正確的防御策略。通常黑客攻擊歸納為信息收集、獲得權(quán)限、保持連接、消除痕跡4個(gè)步驟。在信息收集階段,黑客一般會(huì)使用Nmap、Masscan、AWVS等自動(dòng)化掃描工具獲取服務(wù)器的IP、開放端口、操作系統(tǒng)類型、安裝的應(yīng)用等,然后根據(jù)所收集到的信息尋找服務(wù)器潛在的漏洞。攻擊階段,當(dāng)黑客探測(cè)到了足夠的系統(tǒng)信息,對(duì)系統(tǒng)的安全弱點(diǎn)了解后就會(huì)發(fā)動(dòng)攻擊,常用的攻擊方法有利用漏洞攻擊、暴力破解、木馬后門攻擊、緩沖區(qū)溢出等;一旦漏洞存在,會(huì)利用Metasploit、NC等工具進(jìn)行shell上傳,從而控制服務(wù)器。保持連接階段,一般黑客攻擊成功后除了竊取服務(wù)器中的有用信息,終極目的是能夠控制目標(biāo)系統(tǒng),攻擊后會(huì)在系統(tǒng)上添加特權(quán)賬號(hào),或在服務(wù)器上留下木馬,或添加后門程序,從而避開操作系統(tǒng)的安全控制措施,達(dá)到長(zhǎng)期控制服務(wù)器的目的。消除痕跡階段,黑客在實(shí)現(xiàn)攻擊的目的后,通常會(huì)采取刪除日志、臨時(shí)文件和賬號(hào)來隱藏入侵的痕跡,躲避取證與溯源,逃避懲罰。網(wǎng)絡(luò)世界瞬息萬變,黑客各有不同,他們的攻擊流程也不會(huì)全相同,以上是黑客一般情況下采用的攻擊步驟。
等保目的除了合規(guī)之外,主要是減少服務(wù)器存在的漏洞,避免信息系統(tǒng)受到入侵。我們網(wǎng)絡(luò)安全管理人員除了解等級(jí)保護(hù)的要求外,還必須了解黑客工具和技術(shù),并利用這些知識(shí)來設(shè)計(jì)應(yīng)對(duì)各種攻擊的防御框架,做好主機(jī)安全加固總體規(guī)劃。針對(duì)Linux操作系統(tǒng)主機(jī)防護(hù)制訂以下安全策略:①最小特權(quán)原則,最小化安裝操作系統(tǒng),僅安裝需要的服務(wù),對(duì)于系統(tǒng)中的每個(gè)用戶和程序“知其所需”,盡可能少地使用特權(quán),拒絕給予超過其所需權(quán)限以外的任何特權(quán)。②權(quán)限分離,系統(tǒng)的管理權(quán)限由多個(gè)用戶承擔(dān),不使用多余的賬戶,避免共享賬戶的存在。③完整的訪問控制機(jī)制,操作系統(tǒng)對(duì)每個(gè)訪問都要進(jìn)行合法的檢查,防止非法存取。④日志審計(jì)機(jī)制,除了做正常用戶訪問的審計(jì)之外,還要做好未經(jīng)授權(quán)、被拒絕訪問的訪問記錄。⑤其它,包括關(guān)閉不必要的服務(wù)、關(guān)閉不必要的端口、備份敏感文件、禁止建立空連接、下載最新補(bǔ)丁等。
四、Linux操作系統(tǒng)主機(jī)安全加固方案
1.操作系統(tǒng)安裝
(1)最小化安裝、配置網(wǎng)絡(luò)(配置方法略)。
(2)開啟SSH服務(wù),并把SSH默認(rèn)端口22修改成5002端口:
# service sshd start
修改/etc/ssh/sshd_config文件,在下面加上一行保存:
“ port5002”
(3)安裝補(bǔ)丁升級(jí)至最新:
# yum install update
# cat /etc/*release //最后版本 CentOS release 6.9 (Final)
(4)openssh 版本升級(jí)到7.5p1 (此過程升級(jí)錯(cuò)誤可能導(dǎo)致無法遠(yuǎn)程管理,虛擬機(jī)升級(jí)前建議做快照):
# yum install -y gcc openssl-devel pam-devel rpm-build
# wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz
# tar -zxvf openssh-7.5p1.tar.gz
# cd openssh-7.5p1
# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords--with-tcp-wrappers
# make && make install
修改配置文件/etc/ssh/sshd_config,允許root登錄:
“PermitRootLogin yes ”前的#號(hào)去掉
(5)修改hostname:
# hostname=your_hostname
(6)系統(tǒng)Banner:
# echo “Authorized users only!” >/etc/redhat-release
# echo “Authorized users only!”>/etc/issue
2.身份鑒別
(1)身份標(biāo)識(shí)唯一性,進(jìn)行/etc/passwd和/etc/shadow文件的完整性相同檢查,不存在相同uid 的用戶,不使用過期的賬號(hào)和無用的賬號(hào),限制daemon、shutdown、games、ftp、nobody等默認(rèn)用戶。
(2)身份標(biāo)識(shí)和鑒別:創(chuàng)建“newuser”普通用戶,僅允許“newuser”用戶su為root用戶:
# useradd newuser
# usermod -G wheel newuser
修改配置文件cat /etc/pam.d/su 文件:
“auth required pam_wheel.so use_uid”前的“#”號(hào)去掉
(3)遠(yuǎn)程管理加密:使用ssh協(xié)議登錄,禁止使用 telnet、ftp等明文網(wǎng)絡(luò)協(xié)議。
3.口令設(shè)置及登錄失敗處理
(1)口令長(zhǎng)度:至少10位,且口令需包括數(shù)字、小寫字母、大寫字母和特殊符號(hào)4類元素中的至少3類:
修改配置文件 cat /etc/pam.d/system-auth,在下面加上一行保存:
“password requisite pam_cracklib.so retry=3 minlen=10 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 difok=3”
(2)口令鎖定策略:需設(shè)置連續(xù)認(rèn)證失敗次數(shù)超過5次,鎖定該賬號(hào)5分鐘:
修改配置文件cat /etc/pam.d/system-auth ,在下面加上一行保存:
“auth required pam_tally.so onerr=fail deny=5 unlock_time=300”
(3)口令生存期:賬戶口令的生存期不得長(zhǎng)于180天,兩次修改密碼的最小間隔時(shí)間 7天、密碼最小長(zhǎng)度 10位、密碼過期前7天開始提示修改;
修改配置文件cat /etc/login.defs, 在下面加上幾行保存:
“PASS_MAX_DAYS 180”
“PASS_MIN_DAYS 7”
“PASS_MIN_LEN 10”
“PASS_WARN_AGE 7”
(4)口令歷史有效次數(shù):不重復(fù)使用最近3次已使用過的口令。
修改配置文件 cat /etc/pam.d/system-auth,在下面加上一行保存:
“password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=3 ”
4.安全審計(jì)
啟用auditd服務(wù),啟用日志服務(wù)
# service auditd start
# service rsyslog start
根據(jù)具體的業(yè)務(wù)需要,在/etc/audit/auditd.conf、/etc/audit/ audit.rules文件里配置審計(jì)內(nèi)容:重要用戶行為、系統(tǒng)資源的異常使用和重要系統(tǒng)命令的使用;審計(jì)記錄:日期和時(shí)間、類型、主體;標(biāo)識(shí)、客體標(biāo)識(shí)、事件的結(jié)果等;最后根據(jù)需要對(duì)審計(jì)記錄保護(hù),配置查看日志訪問權(quán)限。
5.其它
(1)禁止root用戶遠(yuǎn)程登錄
修改配置文件 /etc/ssh/sshd_config
把“PermitRootLogin yes” 改為“PermitRootLogin no”
(2)設(shè)置命令行界系統(tǒng)輸入超時(shí)10分鐘,自動(dòng)退出:
修改配置文件cat /etc/profile,在下面加上一行保存:
“export TMOUT=600”
(3)禁ping:
修改配置文件cat /etc/sysctl.conf 在下面加上一行保存:
“ net.ipv4.icmp_echo_ignore_all=1”
(4)禁止Traceroute探測(cè):
# iptables -A FORWARD -p icmp -j DROP
(5)精簡(jiǎn)開機(jī)自啟動(dòng)服務(wù),開啟審計(jì)、系統(tǒng)日志、防火墻等服務(wù):
# for sun in `chkconfig --list|grep 3:on|awk '{print $1}'`;do chkconfig --level 3 $sun off;done
#f or sun in auditd rsyslog sshd network iptables ip6tables;do chkconfig --level 3 $sun on;done
(6)安裝zabbix主機(jī)監(jiān)控客戶端(配置方法略)。
(7)安裝殺毒軟件(配置方法略)。
6.系統(tǒng)應(yīng)用部署完成后需要配置
(1)設(shè)置文件訪問權(quán)限:
修改配置文件 /etc/profile, 在下面加上一行保存:
“umask=027”
(2)建議修改以下重要文件和目錄權(quán)限(根據(jù)需要自行配置):
文件 權(quán)限值
/etc/group文件 644
/etc/passwd文件 644
/etc/xinetd.conf文件 600
/etc/shadow文件 400
/etc/services文件 644
/etc/security目錄 600
/etc/rc6.d文件 750
/tmp文件 750
/etc/ 750
(3)根據(jù)服務(wù)器日志情況進(jìn)行日志策略調(diào)整(等保要求相關(guān)日志保存不少于六個(gè)月)。
(4)單個(gè)用戶多重并發(fā)會(huì)話、最大并發(fā)會(huì)話連接數(shù)等限制策略配置。
(5)制訂備份策略保證數(shù)據(jù)安全,定期進(jìn)行數(shù)據(jù)異地備份(例如每天/周對(duì)數(shù)據(jù)庫(kù)和重要代碼進(jìn)行備份)。
7.清理系統(tǒng)安裝配置信息
# yum clean all
# echo > /var/log/wtmp
# echo > /var/log/secure
# echo > /var/log/messages
# echo > /var/log/cron
# echo > /var/log/dmesg
# echo > /var/log/lastlog
# echo > /var/log/rpmpkgs
# echo > /var/log/utmp
# echo > /var/log/yum
# echo > /var/log/btmp
# echo > ./.bash_history
# history –c
經(jīng)過加固后的Centos操作系統(tǒng),使用銥迅漏洞掃描系統(tǒng)(Yxlink-NVS-7000)和綠盟遠(yuǎn)程安全評(píng)估系統(tǒng)(RSAS-6等保專用版)均未檢查出低、中、高危漏洞,也未掃描出系統(tǒng)和其它應(yīng)用的指紋信息。這樣黑客在信息收集階段,可以成功避免服務(wù)器成為攻擊目標(biāo);即使有黑客找到服務(wù)器,由于短時(shí)間找不出有價(jià)值的漏洞,從黑客攻擊成本考慮,也會(huì)舍棄轉(zhuǎn)向去攻擊有漏洞的服務(wù)器;再者,因?yàn)榉?wù)器采取了開啟防火墻、關(guān)閉不必要端口和進(jìn)程、加強(qiáng)用戶和訪問控制、開啟審計(jì)策略等防護(hù)措施,在黑客攻擊后面的獲得權(quán)限、保持連接、消除痕跡階段也會(huì)有很好的防護(hù)效果。
五、結(jié)束語(yǔ)
操作系統(tǒng)處在最底層,是所有其他軟件的基礎(chǔ),它在解決網(wǎng)絡(luò)安全上也起著基礎(chǔ)性、關(guān)鍵性的作用,沒有操作系統(tǒng)的安全支持,信息系統(tǒng)的安全就缺乏了根基。本文以S3A3G3三級(jí)等保標(biāo)準(zhǔn),介紹了Linux操作系統(tǒng)安全加固配置,全方位考慮網(wǎng)絡(luò)安全的事前防御、事中監(jiān)控、事后分析的安全管理整體需求,提出的Linux操作系統(tǒng)主機(jī)安全加固方案,并且能順利通過專業(yè)測(cè)評(píng)中心的測(cè)評(píng),是一種操作上可行、經(jīng)濟(jì)上省錢,并且能真正起到信息系統(tǒng)安全防護(hù)作用,確保信息系統(tǒng)安全合規(guī),真正落實(shí)信息安全等級(jí)保護(hù)工作的解決方案。目前本方案已成為我校《信息系統(tǒng)網(wǎng)絡(luò)信息安全配置基線》的一部分,主機(jī)加固方法得到全面推廣,數(shù)據(jù)中心所有新安裝的服器模板機(jī)以此為標(biāo)準(zhǔn)進(jìn)行預(yù)配置,信息系統(tǒng)安全防護(hù)能力得到有效提升。
參考文獻(xiàn):
[1]GB17859-1999.計(jì)算機(jī)信息系統(tǒng)安全保護(hù)等級(jí)劃分準(zhǔn)則 [S].
[2]GB/T22240-2008.信息安全技術(shù)信息系統(tǒng)安全等級(jí)保護(hù)定級(jí)指南[S].
[3]GB/T 22239-2008.信息系統(tǒng)安全等級(jí)保護(hù)基本要求[S].
[4]吳世忠等編著.信息安全技術(shù)[M].北京:機(jī)械工業(yè)出版社,2014.4.
[5](美)Shon Harris著,張勝生、張博、付業(yè)輝譯. CISSP認(rèn)證考試指南(第6版)[M].北京:清華大學(xué)出版社,2014.1.
[6]周伯恒編著.CentOS 6.X系統(tǒng)管理實(shí)戰(zhàn)寶典[M].北京:清華大學(xué)出版社,2013.
(編輯:王天鵬)