suricata has rules for pixels :
Code:
# Alert on PNG with 1x1 pixels (tracking)
alert http any any -> any any (msg:"FILE tracking PNG (1x1 pixel) (1)"; filemagic:"PNG image data, 1 x 1,"; sid:8000059; rev:1;)
alert http any any -> any any (msg:"FILE tracking PNG (1x1 pixel) (2)"; filemagic:"PNG image data, 1 x 1|00|"; sid:8000060; rev:1;)
# Alert on GIF with 1x1 pixels (tracking)
# The pattern matches on |00| which is the end of the magic buffer, this way we won't match on 1 x 128.
alert http any any -> any any (msg:"FILE tracking GIF (1x1 pixel)"; filemagic:"GIF image data, version 89a, 1 x 1|00|"; sid:8000061; rev:1;)
it alerts you whenever it sees em. but i dont know if those pixels keep functioning even when suricata alerts of them.
also privoxy has rules for pixels.
https://www.privoxy.org/
those are for web browsing.