Can a full node provide a bogus block bloomfilter to a Neutrino node? When a thin client using BIP157/BIP158 (Neutrino) requests the block filter for the latest block, would it be possible for the full node serving this request to attack the Neutrino node by providing a fake block filter that omits certain transactions?

Do block filters include a mechanism that enables the thin client to verify that it is an accurate representation of the corresponding block's content? Would it be possible to construct the block filters in a fashion that lying by omission becomes impossible when the thin client is aware of the correct latest block's header already?
They can lie to you about the filters, yes. However due to the filters being deterministic you can query other nodes for the hashes of their filters to gauge relative correctness. You can also use a watchtower like service to give a trusted set of the filters in some cases. 

The original design document includes an extension for committing to these filters as a consensus rule. It is designed and presented as “levels” which can improve the reliability and security of using client side filtering in this manner. 


  The security model of the oracle bloom filter can be vastly improved
  by instead committing a hash of the BFD inside every block as a soft-
  fork consensus rule change. After this, every node in the network would
  build the filter and validate that the hash in the block is correct,
  then make a conscious choice discard it for space savings or cache the
  data to disk.


https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2016-May/012636.html