Ethernet interfaces on hosts, switches, routers, etc. will detect corrupted frames and drop them.
Routers will also look at the IPv4 Header Checksum (IPv6 does not have this) to see if a packet header is corrupt, and drop the packet if it is.
Hosts will look at the transport protocol to see if it is corrupt for those transport protocols that have a checksum, and they will drop those corrupt datagrams.
Hubs, on the other hand, simply repeat any received signals out the other interfaces, so there is no detection of corruption. Think of a hub as a powered cable.