USBasp v2

Fischl is the developer of the USBasp, USBasp - USB programmer for Atmel AVR controllers - fischl.de

If the Arduino IDE connect to a target via the USBasp, the target must be connected.
So perhaps the firmware on the USBasp is just fine.

Does the text on the pcb actually say "USBasp" ?
Are you sure it is a ATmega48. As far as I know they are ATmega8 running at 12MHz.
The newest firmware is at the Fischl site.
You have to use another programmer and set a jumper to be able to program new firmware into the USBasp.
I have done that a few times, although it was not necessary.