The 8 pin programming shield doesn't use an external oscillator. You can program the rest of the flash of an ATTINY with the programming shield as long as it's Clock fuse is set to internal. You can even write the Fuse bits if you don't change the clock, and you can even write that ONCE! After that, if you don't have whatever kind of clock you've selected available, the chip just won't function, even for programming.
For example, I have a hack for the TV-B-Gone that turns it into a Super Camera Remote. The TV-B-Gone uses an external 3 pin ceramic resonator like the one pictured here. If you take the processor that comes with the TV-B-Gone, or program the fuses using the makefile in the open source firmware package, you'll get this error:
Fortunately, Randofo includes female headers as a breakout of all the pins. Get one of these 3 pin resonators and connect the middle pin to Ground (pin 4) and the other two to pins 2 and 3.avrdude: Device signature = 0xfff000
avrdude: Expected signature for ATtiny85 is 1E 93 0B
Double check chip, or use -F to override this check.
If you do this, you can reprogram, including going back to internal clock!
Here, I used a breadboard, but it would also be easy to take a little strip of protoboard and make a little header to plug right in.