How to make an (open) object behave like rubber when penetrated by another
You could use cloth physics for the deformation part.

Pin the corners or edges of the rubber object so it keeps its shape by adding it to a Vertex Group. Let the physics do the rest.



Not sure how one could do the holes. Weight Proximity could help fake it, I don't think there is any elegant solution with Blender.
You can also assign each hole size to a shape key and manually control its diameter as necessary by keyframing the influence.