<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/news/1021

                    enter image description here

                    GnuTLS的bug與Apple goto fail的bug都導致了驗證TLS和SSL證書問題,但是他們兩個實際上并非是同一個,雖然都是把假的證書也當成有效的證書。

                    霍普金斯大學的一位密碼學教授說:“GnuTLS是一個編碼錯誤,返回了錯誤的變量,而蘋果可能是一個剪切和粘貼的失誤。”

                    goto命令在這兩個bug當中都出現了,goto fail語句是C語言遇到錯誤的時候一個標準執行流程。判斷證書是否有效的代碼應該返回一個true或者false的布爾值。但是這個GnuTLS的bug,返回的是一個負數的特殊錯誤代碼。

                    這個bug就是當其中的一個函數返回一個負數的錯誤代碼,這個錯誤代碼當做一個布爾型,而不是真正的一個數字,但是布爾型的判斷當中,只要是非0就是true,因此,這個錯誤在布爾判斷中當成了真,形成了這個bug。

                    這個GnuTLS的bug是被Red Hat審計出來的,GnuTLS 是一個安全通訊庫,實現了 SSL、TLS 和 DTLS 協議和相關技術。提供了簡單的 C 語言編程接口用來訪問這些安全通訊協議,提供解析和讀寫 X.509、PKCS #12、OpenPGP 和其他相關結構。特點是可移植性和高效。使用并沒有OpenSSL廣泛,也沒有部署在iOS設備上,但是在Linux和很多開源程序當中有使用。

                    原文:http://threatpost.com/goto-aside-gnutls-and-apple-bugs-are-not-the-same/104626

                      <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>

                                      这里只有精品视频