[分享] 蘋果這次重大資安更新 只是一個小bug
簡單說
單行的if敘述 沒有包成block
但裡面的敘述不小心多寫一遍,
所以沒通過判斷式也會執行。
以下重點code:
/*
在驗證的function裡頭 前面code略
*/
if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
goto fail;
goto fail; // 多餘的忘記砍掉
if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
goto fail;
err = sslRawVerify(ctx,
ctx->peerPubKey,
dataToSign,
dataToSignLen,
signature,
signatureLen);
/*中間code略*/
fail:
SSLFreeBuffer(&signedHashes);
SSLFreeBuffer(&hashCtx);
return err;
}
詳情請參閱 #1J31gdCL (iPhone)
只能說小bug 大危害 不可不慎啊
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.171.209.191
→
02/25 15:56, , 1F
02/25 15:56, 1F
推
02/25 16:05, , 2F
02/25 16:05, 2F
→
02/25 16:05, , 3F
02/25 16:05, 3F
→
02/25 16:23, , 4F
02/25 16:23, 4F
推
02/25 18:36, , 5F
02/25 18:36, 5F
推
02/25 18:57, , 6F
02/25 18:57, 6F
推
02/25 22:02, , 7F
02/25 22:02, 7F
→
02/28 16:29, , 8F
02/28 16:29, 8F
→
03/03 14:21, , 9F
03/03 14:21, 9F
推
03/03 23:54, , 10F
03/03 23:54, 10F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):