A heat pad and a thermostat. A heat rock is a waste of money. It produces a completely localized area of heat and does nothing to actually warm the enclosure. It's also dangerous and they are notorious for malfunctioning.
A heat pad, when used with a thermostat, is an excellent heat source. You must must must buy a thermostat though - this is mandatory unless you want a severer burned snake. They reach temps of 130 + and are constantly burning snakes because the snake often doesn't realize it's too hot until it's way too late. If you want a fairly good thermostat for cheap, go to amazon and search for a hydrofarm thermostat - they're $30.00 and work fairly well if you're only using it for one enclosure.
If you're going to be heating more than one enclosure or if you just want a really good one and not just a "sufficient" one then go to spyder robotics and check out the herpstat. This is what I use and it's awesome.
You can use a heat pad - by zoo med or one of those companies - or you can use flex watt heat tape. I use heat tape but Im heating several rows of enclosures so it's easier. If you're just heating one, go with a heat pad and the thermostat. Forgo the rock!!!
Good luck.
Edit - this is just in response to the answer by Jennifer w. Heat pads are only dangerous without a thermostat. A head pad attached to a thermostat is one of the best ways to provide a controlled and proper hot spot for a ball python. Because balls need moderate to high humidity, a heat lamp (which is often used in an aquarium) will completely dry of the cage and leave the owner to struggle with humidity issues. Also, a smooth rock placed under a heat light for a ball
Python??? It's not a bearded dragon! Ball pythons don't bask on rocks, they stay hidden in hides all day - hence the under tank heater, placed under it's hide. You then attach the probe from the thermostat to the bottom of the cage, directly above the heat pad and in the hide and you set it to stay at 90 degrees (approx). You also place another hide on the cool side of the enclosure so the snake can go back and forth and thermoregulate.