Open tlrx opened 2 years ago
Pinging @elastic/es-security (Team:Security)
I don't think this is really FIPS related - it just happened on a FIPS enabled JVM.
This
» Caused by: javax.crypto.AEADBadTagException: Error finalising cipher data: mac check in GCM failed
can occur when the read side of the socket receives a partial block of encrypted data. GCM uses something like a checksum, and if the block is only partially received, the checksum will be wrong.
That fits with this:
org.elasticsearch.ElasticsearchStatusException: Elasticsearch exception [type=node_not_connected_exception, reason=[javaRestTest-1][127.0.0.1:44922] Node not connected]
If a node disconnected suddenly without closing the socket cleanly, you could get a TLS GCM error.
However, that's not the end of the story.
If we look at the logs for javaRestTest-1
to find out why it's not connected we see:
[2021-11-02T13:43:52,327][WARN ][o.e.t.TcpTransport ] [javaRestTest-1] exception caught on transport layer [Netty4TcpChannel{localAddress=/127.0.0.1:44922, remoteAddress=/127.0.0.1:55548, profile=default}], closing connection
io.netty.handler.codec.DecoderException: javax.net.ssl.SSLException: org.bouncycastle.tls.TlsFatalAlert: bad_record_mac(20)
It looks like some sort of network issue. Possibly a bug in BC-FIPS, but there's not real reason to thing that's more likely than any other cause.
I think we're can put this one down to noise for now, but if we see it again (which might be in another test cluster suite), we might need to investigate further.
One more in my PR CI: https://gradle-enterprise.elastic.co/s/3f3dhjt7bz5hy
It's also a FIPS one ...
We've been asked to raise FIPS related test failure and this looks like one, a ML test failed due to a dead node because of:
Build scan: https://gradle-enterprise.elastic.co/s/rzr4h6ecezfke/tests/:x-pack:plugin:transform:qa:multi-node-tests:javaRestTest/org.elasticsearch.xpack.transform.integration.continuous.TransformContinuousIT/testContinousEvents
Reproduction line:
./gradlew ':x-pack:plugin:transform:qa:multi-node-tests:javaRestTest' --tests "org.elasticsearch.xpack.transform.integration.continuous.TransformContinuousIT.testContinousEvents" -Dtests.seed=D33C8F79C141C5B8 -Dtests.locale=pl -Dtests.timezone=Etc/GMT+4 -Druntime.java=16 -Dtests.fips.enabled=true
Applicable branches: 7.15
Reproduces locally?: Didn't try
Failure history: https://gradle-enterprise.elastic.co/scans/tests?tests.container=org.elasticsearch.xpack.transform.integration.continuous.TransformContinuousIT&tests.test=testContinousEvents
Failure excerpt: