我们有一个Web应用程序,有时请求会被不定期地破坏,只有使用Firefox浏览器才会出现错误:
SSL_ERROR_BAD_MAC_READ
-12273
"SSL received a record with an incorrect Message Authentication Code."
一位客户声称他们每3分钟就有一次这个错误,但其他客户没有这个问题,但其他客户只有这个问题几次。
知道如何找出问题的根源吗?
我通过Firefox代码浏览了一下,发现
if (NSS_SecureMemcmp(mac, pBuf, macLen) != 0) {
/* MAC's didn't match... */
SSL_DBG(("%d: SSL[%d]: mac check failed, seq=%d",
SSL_GETPID(), ss->fd, ss->sec.rcvSequence));
PRINT_BUF(1, (ss, "computed mac:", mac, macLen));
PRINT_BUF(1, (ss, "received mac:", pBuf, macLen));
PORT_SetError(SSL_ERROR_BAD_MAC_READ);
rv = SECFailure;
goto cleanup;
}
显然有可能看到收到的mac是什么以及计算出的mac是什么...有人知道这些日志在FF中的位置或者我应该在FF中启用一些日志记录吗?
我在哪里可以在Firefox中找到此日志?
答案 0 :(得分:4)
我们将openSSL升级到我们平台可用的最新版本,并且它运行良好。问题已经消失,所以它可能是openSSL实现中的一个错误。
答案 1 :(得分:2)
这可能是您正在使用的SSL实施的问题。 MAC就像传输的ssl数据包的哈希值。如果ssl数据包没有被实现正确刷新(吃了一些byes或者没有完全刷新),你会看到这些问题。
答案 2 :(得分:1)
当FF关闭时,我打开了cmd窗口并使用了ipconfig / flushdns命令。我重新打开它,我能够成功访问该URL。