系统安全加固方案5.docx
《系统安全加固方案5.docx》由会员分享,可在线阅读,更多相关《系统安全加固方案5.docx(25页珍藏版)》请在冰点文库上搜索。
![系统安全加固方案5.docx](https://file1.bingdoc.com/fileroot1/2023-6/6/0a9d8fc2-9938-45e4-9007-ca7b8a769fb5/0a9d8fc2-9938-45e4-9007-ca7b8a769fb51.gif)
系统安全加固方案5
系统安全加固方案
文档说明
Apache漏洞
1.1漏洞清单
序号
漏洞信息
影响范围
1
Apachehtpasswd密码salt值生成不随机漏洞
ApacheHTTPExpect头选项跨站脚本执行漏洞(CVE-2006-3918)
ApacheHTTPServermod_proxyReverse代理模式安全限制绕过漏洞
ApacheHTTPServermod_proxy_ajp拒绝服务漏洞
ApacheHTTPServermod_proxy反向代理模式安全限制绕过漏洞
ApacheHTTPServermod_status模块跨站脚本执行漏洞
ApacheHTTPServer拒绝服务漏洞
Apachemod_deflate模块远程拒绝服务漏洞
Apache'mod_imap'Referer跨站脚本漏洞
Apachemod_negotiation模块HTML注入及HTTP响应拆分漏洞
Apachemod_proxy_ftp模块跨站脚本执行漏洞
Apachemod_proxy反向代理拒绝服务漏洞
Apachemod_proxy模块HTTP分块编码整数溢出漏洞
Apachemod_rewrite模块单字节缓冲区溢出漏洞
ApacheMod_SSLSSL_Util_UUEncode_Binary堆栈缓冲区溢出漏洞
ApacheTomcatsource.jsp目录遍历漏洞(CVE-2000-1210)
ApacheWWW服务器畸形HTTP方式413错误页面跨站脚本漏洞
192.168.1.41;192.168.1.42;192.168.1.183;192.168.1.184;192.168.1.10;192.168.1.41;192.168.1.8;192.168.1.7;192.168.1.42;192.168.1.52;192.168.1.51;192.168.1.53;192.168.1.143;192.168.1.144;192.168.1.54;192.168.1.169;192.168.1.171;
1.2加固方案
1.3回退方案
1.4加固结果
已加固
openssh漏洞
2.1漏洞清单
序号
漏洞信息
影响范围
1
OpenSSHglob表达式拒绝服务漏洞(CVE-2010-4755)
OpenSSHJ-PAKE授权问题漏洞(CVE-2010-4478)
OpensshMaxAuthTries限制绕过漏洞(CVE-2015-5600)
OpenSSHroaming_common.c堆缓冲区溢出漏洞(CVE-2016-0778)
OpenSSHS/Key远程信息泄露漏洞(CVE-2007-2243)
OpenSSHsshdmm_answer_pam_free_ctx释放后重利用漏洞(CVE-2015-6564)
OpenSSHsshdPrivilegeSeparationMonitor未明漏洞
OpenSSH'x11_open_helper()'函数安全限制绕过漏洞(CVE-2015-5352)
OpenSSH默认服务器配置拒绝服务漏洞(CVE-2010-5107)
PortableOpenSSHGSSAPI远程代码执行漏洞(CVE-2006-5051)
PortableOpenSSHGSSAPI远程代码执行漏洞(CVE-2008-4109)
PortableOpenSSH'ssh-keysign'本地未授权访问漏洞】
192.168.4.200;192.168.4.201;192.168.2.1;192.168.1.248;
192.168.4.201;
2.2加固方案
第一步准备安装包
1.1、确定操作系统
uname-a
lsb_release-a(suse)
cat/etc/issue(redhat)
1.2、将所需安装包上传到服务器
zlib-1.2.8.tar.gz
openssl-1.0.1p.tar.gz
openssh-7.1p1.tar.gz
相关下载:
www.openssl.org、www.openssh.org、、
//先把所有安装文件上传服务器,再卸载ssh,要不文件上传非常麻烦,在系统镜像中找到gcc安装包一并上传,大部分make失败都是gcc未安装或者安装不全造成。
第二步准备好其他远程方式
2.1、此项可选择telnet或者vnc来进行远程操作
安装telnet服务,telnet安装rpm包对应操作系统ISO文件里面提取,建议不要跨操作系统版本安装,减少未知问题。
vi/etc/xinetd.d/ekrb5-telnet
disable=yes改成no。
servicexinetdrestart
vi/etc/securetty加入
pts/0
pts/1
pts/2
pts/3
vi/etc/pam.d/login文件注释掉:
#auth[user_unknown=ignoresuccess=okignore=ignore
#auth_err=diedefault=bad]pam_securetty.so
//以上步骤保证root用户可以telnet,保证后续远程配置正常进行。
第三步程序升级
3.1、停止SSHD服务
/sbin/servicesshdstop(要确保sshd服务停止)
3.2、备份启动脚本
cp/etc/init.d/sshd/root/
3.3、卸载系统里原有Openssh
rpm–qaopenssh//查询系统原安装的openssh包,全部卸载。
rpm-eopenssh--nodeps
rpm-eopenssh-server--nodeps
rpm-eopenssh-clients--nodeps
rpm-eopenssh-askpass
3.4、解压安装zlib包:
tar-zxvfzlib-1.2.8.tar.gz//首先安装zlib库,否则会报zlib.c错误无法进行
cdzlib-1.2.8
./configure
make&&makeinstall
//yumlist|gerpzlib先查看是否已经安装,已安装跳过这一步。
无法编译安装,尝试安装如下
yuminstall-ygccg++gcc-c++make
yum-yinstallzlib-devel
3.5、解压安装openssl包:
tar-zxvfopenssl-1.0.1p.tar.gz
cdopenssl-1.0.1p
./configsharedzlib
make
maketest
makeinstall
mv/usr/bin/openssl/usr/bin/openssl.OFF
mv/usr/include/openssl/usr/include/openssl.OFF
//该步骤可能提示无文件,忽略即可
ln-s/usr/local/ssl/bin/openssl/usr/bin/openssl
ln-s/usr/local/ssl/include/openssl/usr/include/openssl
//移走原先系统自带的openssl,将自己编译产生的新文件进行链接。
3.6、配置库文件搜索路径
echo"/usr/local/ssl/lib">>/etc/ld.so.conf
/sbin/ldconfig-v
opensslversion-a
OpenSSL1.0.1s19Mar2015
builton:
SatMar2104:
11:
472015
platform:
linux-x86_64
options:
bn(64,64)rc4(8x,int)des(idx,cisc,16,int)idea(int)blowfish(idx)
compiler:
gcc-I.-I..-I../include-fPIC-DOPENSSL_PIC-DZLIB-DOPENSSL_THREADS-D_REENTRANT-DDSO_DLFCN-DHAVE_DLFCN_H-Wa,--noexecstack-m64-DL_ENDIAN-O3-Wall-DOPENSSL_IA32_SSE2-DOPENSSL_BN_ASM_MONT-DOPENSSL_BN_ASM_MONT5-DOPENSSL_BN_ASM_GF2m-DSHA1_ASM-DSHA256_ASM-DSHA512_ASM-DMD5_ASM-DAES_ASM-DVPAES_ASM-DBSAES_ASM-DWHIRLPOOL_ASM-DGHASH_ASM
OPENSSLDIR:
"/usr/local/ssl
//以上是openssl安装成功后输出版本信息
3.7、解压安装openssh包:
先将将/etc/ssh的文件夹备份:
mv/etc/ssh/etc/ssh_bak
tar-zxvfopenssh-7.1p1.tar.gz
cdopenssh-7.1p1
./configure--prefix=/usr--sysconfdir=/etc/ssh--with-zlib--with-ssl-dir=/usr/local/ssl--with-md5-passwords--mandir=/usr/share/man
make
makeinstall
ssh–V
OpenSSH_7.1p2,OpenSSL1.0.1s1Mar2016
3.8、启动服务
cp-pcontrib/redhat/sshd.init/etc/init.d/sshd
cp–pcontrib/suse/rc.sshd/etc/init.d/sshd
//其他版本操作系统具体查看contrib对应目录和readme。
chmod+x/etc/init.d/sshd
chkconfig--addsshd
cpsshd_config/etc/ssh/sshd_config
cpsshd/usr/sbin/sshd
10、验证是否成功
servicesshdstart
ssh-V
OpenSSH_7.1p1,OpenSSL1.0.1m19Mar2015
此时可以尝试远程ssh进去服务器,如果能连,并查看验证日志信息等确认无误。
查看ssh服务状态:
//以下配置redhat略有不同,具体情况具体解决。
/etc/init.d/sshdstatus
Checkingforservicesshdunused
状态不可用,ssh连接正常。
pkillsshd
杀掉sshd服务
servicesshdstart
启动sshd服务
servicesshdstatus
Checkingforservicesshdrunning
卸载telnet-server
rpm–etelnet-server
客户端连接telnet失败。
vi/etc/ssh/sshd_config
PermitRootLoginyes
2.3回退方案
重新安装原版本,导入原来的配置
2.4加固结果
除192.168.1.41;192.168.1.42均已加固
openssl漏洞
3.1漏洞清单
序号
漏洞信息
影响范围
1
OpenSSLASN.1多个解C34:
C56-0543)
OpenSSLASN.1多个解析安全漏洞(CVE-2003-0544)
OpenSSLASN.1多个解析安全漏洞(CVE-2003-0545)
OpenSSLASN1处理无效编码方式不当导致拒绝服务攻击漏洞(CVE-2002-0659)
OpenSSLCBC错误信息泄露漏洞(CVE-2003-0078)
OpenSSLChangeCipherSpecDTLS报文拒绝服务漏洞
OpenSSLCMS/PKCS#7Decryption实现安全漏洞
OpenSSLCMS结构处理内存破坏漏洞(CVE-2010-0742)
OpenSSLdtls1_retrieve_buffered_fragment()函数握手消息拒绝服务漏洞
OpenSSLECC密钥信息泄露漏洞(CVE-2011-4354)
OpenSSLECDSA加密问题漏洞(CVE-2014-0076)
OpenSSLEVP_VerifyFinal函数签名验证漏洞
OpenSSLkssk_keytab_is_available()远程拒绝服务出漏洞
OpenSSLOpenSSL实现加密问题漏(CVE-2008-7270)
OpenSSLTiming攻击RSA私钥信息泄露漏洞
OpenSSLzlib_stateful_finish函数内存泄露漏洞(CVE-2009-4355)
OpenSSL错误版本数据库旁路攻击法漏洞(CVE-2003-0131)
OpenSSL多个远程拒绝服务漏洞(CVE-2013-0166)
OpenSSL密码集降级安全漏洞(CVE-2010-4180)
OpenSSL在64位平台下数制表示方式不正确漏洞(CVE-2002-0655)
OpenSSL证书伪造漏洞(CVE-2005-2946)
SSL3.0POODLE攻击信息泄露漏洞(CVE-2014-3566)【原理扫描】
SSL/TLS受诫礼(BAR-MITZVAH)攻击漏洞(CVE-2015-2808)【原理扫描】
192.168.1.252;192.168.4.201;192.168.4.253;192.168.4.252;192.168.2.253;192.168.2.252;192.168.2.1;192.168.1.253;
3.2加固方案
第一步准备安装包
1.1、确定操作系统
uname-a
lsb_release-a(suse)
cat/etc/issue(redhat)
1.2、将所需安装包上传到服务器
zlib-1.2.8.tar.gz
openssl-1.0.1p.tar.gz
openssh-7.1p1.tar.gz
相关下载:
www.openssl.org、www.openssh.org、、
//先把所有安装文件上传服务器,再卸载ssh,要不文件上传非常麻烦,在系统镜像中找到gcc安装包一并上传,大部分make失败都是gcc未安装或者安装不全造成。
第二步准备好其他远程方式
2.1、此项可选择telnet或者vnc来进行远程操作
安装telnet服务,telnet安装rpm包对应操作系统ISO文件里面提取,建议不要跨操作系统版本安装,减少未知问题。
vi/etc/xinetd.d/ekrb5-telnet
disable=yes改成no。
servicexinetdrestart
vi/etc/securetty加入
pts/0
pts/1
pts/2
pts/3
vi/etc/pam.d/login文件注释掉:
#auth[user_unknown=ignoresuccess=okignore=ignore
#auth_err=diedefault=bad]pam_securetty.so
//以上步骤保证root用户可以telnet,保证后续远程配置正常进行。
第三步程序升级
3.1、停止SSHD服务
/sbin/servicesshdstop(要确保sshd服务停止)
3.2、备份启动脚本
cp/etc/init.d/sshd/root/
3.3、卸载系统里原有Openssh
rpm–qaopenssh//查询系统原安装的openssh包,全部卸载。
rpm-eopenssh--nodeps
rpm-eopenssh-server--nodeps
rpm-eopenssh-clients--nodeps
rpm-eopenssh-askpass
3.4、解压安装zlib包:
tar-zxvfzlib-1.2.8.tar.gz//首先安装zlib库,否则会报zlib.c错误无法进行
cdzlib-1.2.8
./configure
make&&makeinstall
//yumlist|gerpzlib先查看是否已经安装,已安装跳过这一步。
无法编译安装,尝试安装如下
yuminstall-ygccg++gcc-c++make
yum-yinstallzlib-devel
3.5、解压安装openssl包:
tar-zxvfopenssl-1.0.1p.tar.gz
cdopenssl-1.0.1p
./configsharedzlib
make
maketest
makeinstall
mv/usr/bin/openssl/usr/bin/openssl.OFF
mv/usr/include/openssl/usr/include/openssl.OFF
//该步骤可能提示无文件,忽略即可
ln-s/usr/local/ssl/bin/openssl/usr/bin/openssl
ln-s/usr/local/ssl/include/openssl/usr/include/openssl
//移走原先系统自带的openssl,将自己编译产生的新文件进行链接。
3.6、配置库文件搜索路径
echo"/usr/local/ssl/lib">>/etc/ld.so.conf
/sbin/ldconfig-v
opensslversion-a
OpenSSL1.0.1s19Mar2015
builton:
SatMar2104:
11:
472015
platform:
linux-x86_64
options:
bn(64,64)rc4(8x,int)des(idx,cisc,16,int)idea(int)blowfish(idx)
compiler:
gcc-I.-I..-I../include-fPIC-DOPENSSL_PIC-DZLIB-DOPENSSL_THREADS-D_REENTRANT-DDSO_DLFCN-DHAVE_DLFCN_H-Wa,--noexecstack-m64-DL_ENDIAN-O3-Wall-DOPENSSL_IA32_SSE2-DOPENSSL_BN_ASM_MONT-DOPENSSL_BN_ASM_MONT5-DOPENSSL_BN_ASM_GF2m-DSHA1_ASM-DSHA256_ASM-DSHA512_ASM-DMD5_ASM-DAES_ASM-DVPAES_ASM-DBSAES_ASM-DWHIRLPOOL_ASM-DGHASH_ASM
OPENSSLDIR:
"/usr/local/ssl
//以上是openssl安装成功后输出版本信息
3.7、解压安装openssh包:
先将将/etc/ssh的文件夹备份:
mv/etc/ssh/etc/ssh_bak
tar-zxvfopenssh-7.1p1.tar.gz
cdopenssh-7.1p1
./configure--prefix=/usr--sysconfdir=/etc/ssh--with-zlib--with-ssl-dir=/usr/local/ssl--with-md5-passwords--mandir=/usr/share/man
make
makeinstall
ssh–V
OpenSSH_7.1p2,OpenSSL1.0.1s1Mar2016
3.8、启动服务
cp-pcontrib/redhat/sshd.init/etc/init.d/sshd
cp–pcontrib/suse/rc.sshd/etc/init.d/sshd
//其他版本操作系统具体查看contrib对应目录和readme。
chmod+x/etc/init.d/sshd
chkconfig--addsshd
cpsshd_config/etc/ssh/sshd_config
cpsshd/usr/sbin/sshd
10、验证是否成功
servicesshdstart
ssh-V
OpenSSH_7.1p1,OpenSSL1.0.1m19Mar2015
此时可以尝试远程ssh进去服务器,如果能连,并查看验证日志信息等确认无误。
查看ssh服务状态:
//以下配置redhat略有不同,具体情况具体解决。
/etc/init.d/sshdstatus
Checkingforservicesshdunused
状态不可用,ssh连接正常。
pkillsshd
杀掉sshd服务
servicesshdstart
启动sshd服务
servicesshdstatus
Checkingforservicesshdrunning
卸载telnet-server
rpm–etelnet-server
客户端连接telnet失败。
vi/etc/ssh/sshd_config
PermitRootLoginyes
2.3回退方案
重新安装原版本,导入原来的配置
2.4加固结果
除192.168.1.41;192.168.1.42均已加固
NTP漏洞
1.
2.
3.
4.
4.1漏洞清单
序号
漏洞信息
影响范围
1
NTPAutoKey恶意消息拒绝服务漏洞(CVE-2015-7691)
NTPAutoKey恶意消息拒绝服务漏洞(CVE-2015-7692)
NTPAutoKey恶意消息拒绝服务漏洞(CVE-2015-7702)
NTPCRYPTO_ASSOC内存泄漏导致拒绝服务漏洞(CVE-2015-7701)
NTPKiss-o'-Death拒绝服务漏洞(CVE-2015-7704)
NTPKiss-o'-Death拒绝服务漏洞(CVE-2015-7705)
NTPMode7请求拒绝服务漏洞(CVE-2015-7848)
NTP'ntp_request.c'远程拒绝服务漏洞(CVE-2013-5211)【原理扫描】
NTPntpd代码注入漏洞(CVE-2014-9751)
NTPntpd输入验证漏洞(CVE-2014-9750)
NTPntpd缓冲区溢出漏洞(CVE-2