I like jang's post a lot.
I think the key to beating aggressive players is finding out where their ranges are too wide (and too weak) and really implementing your own aggression in that spot.
You really need to be able to make any adjustments necessary.
Thinking about it from a game theory perspective, imagine a player that calls 100% preflop, 100% on the flop, 100% on the turn, and 5% on the river. How do you beat that player?
Thinking about poker this way can really help you figure out where your opponent's weaker spots are to pressure them, and where you may just be feeding the pot with far too many weak hands.
The adjustments necessary might be uncomfortable. You might actually be calling super light on the flop, playing very passively early on in a hand, then getting very aggressive on later streets. Just don't close your mind off to potential solutions to beating players, and think of it like a game, a strategy is required to win, use the information available to you and really mold that strategy to your specific opponent.
I wouldn't necessarily tighten up OOP or in position either. Those can be fine slight adjustments early on, but you should be gathering information about your opponent and unless they spew really badly in big stack spots, you are often going to end up at too big a disadvantage if you play tight against a decent aggressive player.
Of course, against the fish that is just nuts and will
bluff off every hand, you probably want to pull back a bit and play a good ole value stack strategy (for the most part at least), but that's an easy one to solve, playing against a decent-good aggro requires a different strategy.