<pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
    <pre id="vvttv"></pre>

      <p id="vvttv"></p>

          <p id="vvttv"></p>

                <p id="vvttv"></p>

                <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                  <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                    <p id="vvttv"></p>

                    原文地址:http://drops.wooyun.org/papers/2185

                    0x00 概述


                    心臟出血(CVE-2014-0160)后,Openssl 拿出專項資金進行了代碼審計,于6月5號晚發布了所發現的漏洞公告。

                    https://www.openssl.org/news/secadv_20140605.txt

                    總結如圖:

                    enter image description here

                    兩個高危漏洞 2014-0224中間人攻擊(截獲明文) 和2014-0195(DTLS 特定包代碼執行) 3個拒絕服務 1個緩存區注入 1個特殊漏洞

                    0x01 詳情


                    1. CVE-2014-0224 ChangeCipherSpec 注入

                    漏洞作者:KIKUCHI Masashi

                    漏洞原理

                    enter image description here

                    按照TLS的協議 在固定的時間順序內服務端發送和接收ChangeCipherSpec(更改密鑰規格)數據,但是實際上openssl的實現:

                    服務端在發送時是按照時間線的順序發送,接收時卻沒有檢查順序,導致攻擊者可以構造偽造的ChangeCipherSpec(比如使用空的主密鑰),導致可以中間人攻擊解密兩端加密信息。

                    更多詳情:http://ccsinjection.lepidum.co.jp/blog/2014-06-05/CCS-Injection-en/index.html

                    Poc

                    https://gist.github.com/rcvalle/71f4b027d61a78c42607 https://gist.github.com/rcvalle/585e12e4d5d3b658cd3d#

                    影響版本:

                    客戶端所有版本都存在。服務端已知的受影響版本OpenSSL 1.0.1 和1.0.2-beta1.

                    漏洞產生必須客戶端和服務端都使用了受影響版本的openssl。

                    2. CVE-2014-0195 DTLS碎包代碼執行

                    漏洞作者:Jüri Aedla(Pwn2Own的火狐溢出執行獲勝者)

                    漏洞原理:

                    為了避免被IP分片,在DTLS存在一個數據包處理機制:

                    對所有大的UDP包進行分割,每個分割后的DTLS片段有三個標志字段:

                    總消息長度
                    幀偏移量
                    幀大小長度
                    

                    每個DTLS分包后的總消息長度是固定不變的。

                    OPENSSL把每個收到的DTLS包判斷(幀大小長度<總的長度)就會把這段長度的數據復制到緩沖區。

                    Openssl出錯的地方就是:他認為所有DTLS包的總消息長度都是固定不變的。并沒有檢查總消息長度是否一致

                    所有攻擊者可構造第一個包:

                    總長度 10
                    分包長度 2
                    

                    第二個包

                    總長度 1000
                    分包長度900
                    

                    由于長度字段占用3個字節,理論上可以寫入(2^8)^3數據,再利用上下文執行命令。

                    OPENSSL在后面做了一些長度的代碼檢查但是前面已經執行。

                    More: http://h30499.www3.hp.com/t5/HP-Security-Research-Blog/ZDI-14-173-CVE-2014-0195-OpenSSL-DTLS-Fragment-Out-of-Bounds/ba-p/6501002#.U5FqnvmSyD4

                    受影響范圍:

                    只有使用到DTLS的應用才會受影響。
                    包括但不限于:
                    VPN(openVPN)
                    VoIP
                    WebRTC  按照我之前對某些應用的研究很多app使用了這個。包括某 用戶量最大的app 視頻通信基于這個做的。
                    SSL的LDAP
                    SNMPv3
                    基于SSL的視頻 音頻
                    

                    (你們只用zmap掃端口是不是太局限了)

                    3. DOS

                    CVE-2014-0221&&CVE-2014-0198&&CVE-2010-5298

                    CVE-2014-0221

                    原理

                    發送無效的DTLS握手包到DTLS客戶端,可令客戶端進入死循環導致拒絕服務。
                    

                    影響

                    只對使用了DTLS的客戶端有影響。
                    

                    CVE-2014-0198&&CVE-2010-5298

                    原理

                    ssl3_read_bytes功能在競爭條件下可以讓攻擊者在會話中注入數據或導致拒絕服務。
                    

                    影響

                    只有在SSL_MODE_RELEASE_BUFFERS打開的時候受影響(默認關閉)
                    但是有些服務商為了節省內存會打開此選項。(比如Nginx,apache2.4.1,openvpn)
                    對DTLS/SSL2無影響。
                    

                    CVE-2014-3470

                    匿名ECDH套件拒絕服務

                    OpenSSL TLS客戶端啟用了匿名ECDH密碼套件會受到拒絕服務攻擊。

                    0x02 修復


                    1. 升級到Openssl最新版

                    Openssl 0.9.8 za

                    https://www.openssl.org/source/openssl-0.9.8za.tar.gz

                    Openssl 1.0.0m

                    https://www.openssl.org/source/openssl-1.0.0m.tar.gz

                    Openssl 1.0.1h

                    https://www.openssl.org/source/openssl-1.0.1h.tar.gz

                    2. 升級完后 記得重啟是配置生效。

                    受影響的客戶端及時進行補丁更新。:)

                      <pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
                      <pre id="vvttv"></pre>

                        <p id="vvttv"></p>

                            <p id="vvttv"></p>

                                  <p id="vvttv"></p>

                                  <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                                    <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                                      <p id="vvttv"></p>

                                      这里只有精品视频