In a mixing bowl, whisk together pudding mix and milk until smooth. Allow to set (about 5 min).
Gently fold whipped topping into the pudding mixture and set aside.
In a food processor, pulse 1 sleeve graham crackers into crumbs; set both aside. (this step is only required if you want to use graham cracker "crumbs" for the top layer).
In a 10.5 x 7 baking dish, line bottom with a single layer of graham crackers.
Pour half of the filling over the crackers and spread evenly.
Create a second layer of graham crackers.
Pour in remaining filling and spread evenly.
Sprinkle crumbled graham crackers over entire surface; place cake in refrigerator while you prepare frosting.
For the ganache:
In a small saucepan over medium flame, heat and whisk milk until warmed through, add sugar and cocoa. Heat and whisk until gentle boil occurs; remove from heat.
Whisk in butter until smooth.
Gently pour frosting over cake using an icing or rubber spatula to spread evenly.
Cover and refrigerate overnight and serve chilled.
It is not necessary to use the entire box of graham crackers for this recipe, you'll probably end up with a whole extra sleeve.
A few tips for cutting the cake, the ganache layer on top will be tricky to cut so we recommend using a hot sharp knife to slice right as the cake comes out of the refrigerator. Use a wide spatula to remove the slices from the pan. Serve chilled.