Rocks are, typically, porous, but not so much clays and shales are only slightly so. Putrescine is found in all cells and especially bacteria. The presence of putrescine does not mean that the sample is either old or young. As an amine it would have a long half life under anaerobic conditions and may be therefore quite old (yes that could be millions of years), but it could also be quite young if there is significant ground water and something for bacteria to chew on, because the porosity of rocks, especially sandstones and limestones allows not only liquid organics to penetrate but also bacteria. It may only be a week old. Indeed if the material is "floating" on water, like most pertoleum deposits, then it could have been formed anywhere and at any time and just migrated to its present position, the same as liquid hydrocarbons. The presence of coal nearby is also a possible source of biogenic putrescine.
So..... I guess your are all right.
lol It's always the most fun when everyone can be right.