<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          那些年我改過的漏洞

          共 3663字,需瀏覽 8分鐘

           ·

          2022-01-17 00:27

          那些年我改過的漏洞

          在開發(fā)過程中常常會(huì)遇到各種各樣的漏洞,當(dāng)漏洞發(fā)生時(shí)一定要及時(shí)的去修復(fù),否則可能會(huì)造成巨大損失。這篇文章就說一說我遇到過的漏洞,后續(xù)遇到新的漏洞將會(huì)你繼續(xù)更新,請(qǐng)您持續(xù)關(guān)注!!!

          mysql服務(wù)器漏洞

          Mysql漏洞大多是由于版本未升級(jí)造成的,但是由于生產(chǎn)環(huán)境的數(shù)據(jù)庫(kù)也不可能頻繁的升級(jí),常在河邊走,哪能不濕鞋,一次的失誤就可能給客戶造成難以承受的損失。Mysql官方針對(duì)漏洞也提供了對(duì)應(yīng)的補(bǔ)丁方案,修補(bǔ)漏洞時(shí)可以采用補(bǔ)丁或者卸載升級(jí)兩種方案

          上圖中的漏洞是通過綠盟掃描出來的,這里僅針對(duì)解決過程進(jìn)行描述

          漏洞文檔中會(huì)有漏洞補(bǔ)丁鏈接,可以通過補(bǔ)丁鏈接查看當(dāng)前漏洞存在版本,然后進(jìn)行對(duì)應(yīng)版本的升級(jí)

          網(wǎng)頁(yè)搜索漏洞編號(hào),即可查看到漏洞存在版本,針對(duì)版本進(jìn)行升級(jí) 還有一種方式就是下載補(bǔ)丁,但是這種方式?jīng)]有采用過,就不做贅述了(畢竟我只想寫有用過的,沒用過的沒有什么意義)

          后臺(tái)回復(fù)“Mysql升級(jí)”獲取完整版的MySQL升級(jí)方案(純手寫)

          Nginx相關(guān)漏洞方案

          腳本下載

          我們?cè)诓渴饂ar包的時(shí)候可能會(huì)將啟動(dòng)腳本或者其他文件放在一個(gè)公共的目錄下,此時(shí)如果文件夾或文件如果沒有做任何限制的話,腳本或配置文件很有可能會(huì)直接暴露在公網(wǎng)環(huán)境下

          此時(shí)可以通過配置nginx的攔截策略禁止.sh、.properties等鏈接的訪問

          location?~?\.(sh|properties)$?{
          ??????deny?all;
          }

          利用X-Forwarded-For偽造客戶端IP

          攻擊者在請(qǐng)求頭上帶上一個(gè)偽造的X-Forwarded-For,由于后續(xù)每層代理只會(huì)追加而不會(huì)覆蓋,那么最終到達(dá)應(yīng)用服務(wù)器時(shí),獲取的左邊第一個(gè)IP地址將會(huì)是客戶端偽造的IP。

          解決方案:在直接對(duì)外的Nginx反向代理服務(wù)器上配置以下代碼:proxy_set_header X-Forwarded-For $remote_addr;。使用$remote_addr替代$proxy_add_x_forwarded_for。$remote_addr是獲取的是直接TCP連接的客戶端IP,這個(gè)是無法偽造的。

          server?{
          ???????...
          ??????location?/?{
          ??????????...
          ??????????proxy_set_header?X-Forwarded-For?$remote_addrp;
          ??????????...
          ??????}
          ??????...
          }

          注意,如果業(yè)務(wù)中有統(tǒng)計(jì)用戶來源ip,該配置有可能會(huì)導(dǎo)致用戶來源ip不精準(zhǔn),因?yàn)槿绻谀愕膎ginx上游還有其他服務(wù)器,比如防火墻等,所獲取的ip將會(huì)是nginx上游距離最近的一個(gè)服務(wù)器ip,而不是用戶來源ip。

          Iframe點(diǎn)擊劫持

          頁(yè)面允許被iframe嵌套,當(dāng)嵌套一個(gè)透明不可見的頁(yè)面時(shí),你鼠標(biāo)的操作其實(shí)是被嵌套的看不到的頁(yè)面,浮在表層的一系列圖片按鈕只是為了誘騙你點(diǎn)擊固定的位置從而達(dá)到攻擊者的目的。將域名或者鏈接添加到已經(jīng)寫好的HTML文件中,該文件里面已經(jīng)嵌套了一個(gè)透明iframe頁(yè)面,然后在瀏覽器訪問該文件,如果頁(yè)面訪問正常出現(xiàn)特定樣式則說明存在點(diǎn)擊劫持漏洞

          簡(jiǎn)單來說,就是禁止iframe中嵌套網(wǎng)站頁(yè)面

          解決方案:

          server?{
          ???????...
          ??????add_header?X-Frame-Options?SAMEORIGIN;
          ??????...
          }

          DENY:瀏覽器拒絕當(dāng)前頁(yè)面加載任何Frame頁(yè)面

          SAMEORIGIN:frame頁(yè)面的地址只能為同源域名下的頁(yè)面

          ALLOW-FROM origin:origin為允許frame加載的頁(yè)面地址

          Tomcat相關(guān)漏洞方案

          版本泄露

          訪問Tomcat頁(yè)面是如果頁(yè)面不存在或者鏈接異常常會(huì)泄露Tomcat的版本號(hào),官方會(huì)公開該版本所存在的漏洞,不法分子很可能會(huì)通過版本號(hào)針對(duì)性的進(jìn)行漏洞攻擊,給網(wǎng)站帶來極大的威脅

          此時(shí)可以通過修改tomcat配置來隱藏版本號(hào)

          進(jìn)入tomcat的lib目錄找到catalina.jar文件
          unzip?catalina.jar之后會(huì)多出兩個(gè)文件夾
          進(jìn)入org/apache/catalina/util?編輯配置文件ServerInfo.properties
          修改為
          server.info=Apache?Tomcat
          server.number=0.0.0.0
          server.built=Nov?7?2016?20:05:27?UTC
          將修改后的信息壓縮回jar包
          cd?/tomcat/lib
          jar?uvf?catalina.jar?org/apache/catalina/util/ServerInfo.properties
          重啟tomcat

          代碼相關(guān)漏洞方案

          Missing Secure Attribute in Encrypted Session (SSL) Cookie(加密會(huì)話(SSL) Cookie中缺少安全屬性)

          該漏洞是指部分Cookie未設(shè)置安全屬性,安全屬性指:HttpOnly?和Secure

          解決方案:這兩個(gè)cookie是由第三方插件產(chǎn)生的,起初沒有很好地方案,但是后來想了想,不管是不是第三方插件,只要是站內(nèi)的鏈接,均可以使用過濾器進(jìn)行來設(shè)置cookie屬性,后采用在代碼中對(duì)這兩個(gè)屬性進(jìn)行屬性設(shè)置

          @Component
          @ServletComponentScan
          @WebFilter(urlPatterns?=?"/*",?filterName?=?"CookieFilter")
          public?class?CookieFilter?implements?Filter?{
          ????@Override
          ????public?void?init(FilterConfig?filterConfig)?throws?ServletException?{
          ????}
          ????@Override
          ????public?void?doFilter(ServletRequest?servletRequest,?ServletResponse?servletResponse,?FilterChain?filterChain)?throws?IOException,?ServletException?{
          ????????HttpServletResponse?httpServletResponse?=?(HttpServletResponse)?servletResponse;
          ????????//設(shè)置安全參數(shù)
          ????????HttpServletRequest?req?=?(HttpServletRequest)servletRequest;
          ????????Cookie[]?cookies?=?req.getCookies();
          ????????if?(cookies?!=?null)?{
          ????????????for?(Cookie?cookie?:?cookies)?{
          ????????????????if("BMAP_SECKEY".equals(cookie.getName())||"SECKEY_ABVK".equals(cookie.getName())){
          ????????????????????String?value?=?cookie.getValue();
          ????????????????????StringBuilder?builder?=?new?StringBuilder();
          ????????????????????builder.append(cookie.getName()+"="+value+";");
          ????????????????????builder.append("Secure;");//Cookie設(shè)置Secure標(biāo)識(shí)
          ????????????????????builder.append("HttpOnly;");//Cookie設(shè)置HttpOnly
          ????????????????????httpServletResponse.addHeader("Set-Cookie",?builder.toString());
          ????????????????}
          ????????????}
          ????????}
          ????????filterChain.doFilter(servletRequest,?servletResponse);
          ????}
          ????@Override
          ????public?void?destroy()?{

          ????}
          }

          屬性設(shè)置之后,再訪問即可

          第三方相關(guān)漏洞方案

          Log4J漏洞

          Log4j爆"核彈級(jí)"漏洞,那就來做個(gè)拆彈專家吧



          未完待續(xù)...



          瀏覽 302
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  久久人人妻人人人人妻性色aV | 超碰成人免费 | 苍井空在厨房被C的A片 | 日韩黄色在线电影 | 日韩亚洲色片 |