You can use dd to extract arbitrary chunks of bytes.
For example,
dd skip=1234 count=5 bs=1
would copy bytes 1235 to 1239 from its input to its output, and discard the rest.
To just get the first five bytes from standard input, do:
dd count=5 bs=1
Note that, if you want to specify the input file name, dd has old-fashioned argument parsing, so you would do:
dd count=5 bs=1 if=filename
Note also that dd verbosely announces what it did, so to toss that away, do:
dd count=5 bs=1 2>&-
or
dd count=5 bs=1 2>/dev/null