撞火枪托(英语:Bump-fire stock)是一个用于将半自动步枪改装为类似全自动步枪,以便连续发射子弹的装置。半自动步枪原本每次扣上扳机只能发射一发子弹,但使用撞火枪托可在无须修改枪身内部构造的情况下,只需通过简易的改装便能如机关枪一样持续发射子弹,从而大幅提高半自动步枪的射速及杀伤力。半自动步枪加装撞火枪托后,射手每次以手指扣动扳机发射首发子弹时,步枪在自由枪机下自动完成抛壳及为下一发子弹上膛,原本半自动步枪的射手必须松开扳机后再次扣动扳机才会发射下一发子弹,但加装撞火枪托的半自动步枪在进行抛壳及上膛的同时,步枪的枪身在后座力的作用下会向撞火枪托的底部滑动,因为撞火枪托的握把可稳定枪手手指的位置,所以连接枪身的扳机在后移时会与射手的手指松开。由于射手的肩部支撑著枪托的位置,枪身往后滑动时会压缩撞火枪托内的弹簧,当后座力减退后弹簧便会将枪身推回前方,连带将枪支的扳机推向正扣著扳机的手指,令扳机再次受到手指的扣压,下一发子弹因此被激发射出,于是枪支进入下一个射击循环,并使枪身继续往复运动及发射子弹,而射速可达每分钟400至800发。