日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

服务器漏洞整理

發布時間:2024/1/18 编程问答 67 豆豆
生活随笔 收集整理的這篇文章主要介紹了 服务器漏洞整理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

服務器漏洞整理

記錄下掃描出來的各種漏洞和解決測試方法。

一、php+apache升級

php5+apache2.4.6的版本太老,升級到php7和apache2.4.46能解決大部分漏洞。

  • php升級
    直接上升級腳本,其中復制配置文件那兩行不能直接用, 配置文件php.ini根據實際需求修改:
  • #!/bin/sh echo "########## Stop httpd mysqld php-fpm ##########" #停止apache服務 sudo systemctl stop httpd.service #停止數據庫服務 sudo systemctl stop mysqld #停止php-fpm服務 sudo systemctl stop php-fpm.service echo "################ Remove php ###################" #卸載php相關組件 sudo yum remove php*.x86_64 -y#由于linux的yum源不存在php7.x,所以我們要更改yum源 echo "########## change yum source ##########" sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm#yum search php7 echo "########## install php ##########" #安裝php及相關拓展功能 sudo yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-mbstring php72w-mysqlnd php72w-pdo php72w-xml php72w-xmlrpc #php 復制配置文件 sudo \cp -rf ./php-fpm.service /lib/systemd/system/ sudo \cp -rf ./php.ini /etc/ #設置開機啟動php-fpm sudo systemctl enable php-fpm.service echo "############## Start mysqld httpd php ###############" #重啟數據庫 sudo systemctl start mysqld #啟動apache服務 sudo systemctl restart php-fpm.service sudo systemctl restart httpd.service
  • Apache升級
    centos7的軟件庫默認只有2.4.6版本的apache,需要安裝epel和CodeIT來獲取最新的apache版本。
    先上獲取最新版本的腳本,在這里停一下,看看yum info httpd的版本是不是最新的,如果還是老的2.4.6,去https://repo.codeit.guru/這個網址看下,codeit.el7.repo的路徑,和腳本里“wget https://repo.codeit.guru/codeit.el7.repo”這句能不能對上。
  • #!/bin/sh echo "########## Stop httpd mysqld php-fpm ##########" #停止apache服務 sudo systemctl stop httpd.service #停止數據庫服務 sudo systemctl stop mysqld #停止php-fpm服務 sudo systemctl stop php-fpm.service echo "############# Remove httpd.x86_64 #############" #卸載原版本apache sudo yum -y erase httpd.x86_64 #獲取apache更改日志 sudo yum install -y yum-changelog #安裝最新的epel sudo yum install -y epel-release #安裝CodeIT庫 cd /etc/yum.repos.d wget https://repo.codeit.guru/codeit.el7.repoecho "############### Show Apache Info ##############" #查看apache版本,是不是最新的 sudo yum info httpd


    能獲取到最新的版本后,再進行升級。

    echo "############## Install Apache ##################" #安裝apache sudo yum -y install httpd cd /root/apache_upgrade echo "########## Replace 00-mpm.conf httpd.conf ##########" #改配置文件,00-mpm.conf中使用"LoadModule mpm_prefork_module modules/mod_mpm_prefork.so"這句 sudo \cp -rf ./00-mpm.conf /etc/httpd/conf.modules.d/ #改apache監聽端口,不改默認80 sudo \cp -rf ./httpd.conf /etc/httpd/conf/ #改/lib/systemd/system/httpd.service里的PrivateTmp=false sudo \cp -rf ./httpd.service /lib/systemd/system/ echo "############## Start mysqld httpd php ###############" #重啟數據庫 sudo systemctl start mysqld #設置開機啟動apache sudo systemctl enable httpd.service #啟動apache服務 sudo systemctl restart php-fpm.service sudo systemctl restart httpd.service

    二、OpenSSH的漏洞

    CVE-2020-15778
    CVE-2018-15919
    CVE-2017-15906
    沒法通過升級解決,可以禁用scp,改用rsync,最省事的辦法是把openssh卸載,不影響遠程登服務器,不過這樣的話,就不能從服務器跳到其它服務器了。

    #查詢已安裝的openssh rpm –qa | grep openssh #卸載 名字從上一步查到的結果里復制 rpm -e openssh-clients.x86_64.xxxxx.el7

    三、sudo漏洞

    CVE-2021- 3156
    使用非root用戶登錄,運行命令

    sudoedit -s /

    如果返回 “sudoedit”開頭的信息,說明有安全風險。
    如果返回 “usage”開頭的信息,說明沒有安全風險。

    解決方式:把sudo升級到最新版本。官網地址:https://www.sudo.ws/download.html
    按照系統,找到你要的最新版的rpm包

    卸載

    rpm -e sudo*

    安裝

    rpm -ivh sudo-1.9.5-3.el7.x86_64.rpm #名字注意下,版本號有變

    測試,返回 “usage”開頭的信息,說明沒有安全風險

    四、Apache目錄權限

    包含js代碼文件的路徑需要禁止訪問。
    改 /etc/httpd/conf/httpd.conf 文件,找到根目錄的Directory標簽:

    <Directory "根目錄">## Possible values for the Options directive are "None", "All",# or any combination of:# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews## Note that "MultiViews" must be named *explicitly* --- "Options All"# doesn't give it to you.## The Options directive is both complicated and important. Please see# http://httpd.apache.org/docs/2.4/mod/core.html#options# for more information.#Options FollowSymLinks## AllowOverride controls what directives may be placed in .htaccess files.# It can be "All", "None", or any combination of the keywords:# Options FileInfo AuthConfig Limit#AllowOverride None## Controls who can get stuff from this server.#Require all granted </Directory>

    如果有個別目錄需要開放,在后面添加一個或多個Directory標簽

    <Directory "要開放的目錄">Options Indexes FollowSymLinksAllow from all </Directory>

    五、版本、密碼信息保護

    刪除phpinfo.php,這個文件是當時為了方便看php版本和組件信息加上的。
    所有涉及到密碼的相關信息不用明文,包括ajax傳遞的參數、cookie里存的密碼信息等,至少也要用md5處理下。

    六、遠端WWW服務支持TRACE請求

    apache版本2.4.6以上,改http.conf文件,在最后加入:

    TraceEnable off

    重啟服務

    systemctl restart httpd

    測試
    本地電腦telnet遠程連接服務器

    telnet {ip} {apache端口} 回車 #如:telnet 1.1.1.1 8080 按ctrl+] 回車 輸入 TRACE / HTTP/1.0 回車 #此處建議直接復制,連接保持的時間比較短 輸入 X-Test:abcde 兩次回車

    返回405報錯,說明沒有安全風險

    總結

    以上是生活随笔為你收集整理的服务器漏洞整理的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。