如图,一道很简单的格式化字符串,a1是输入,snprintf将其导到s里,然后printf(s)问题是Welcome,是8个字符,%s前刚好有个空格我一开始构造paylaod为b"aaaaaaa"+p32(0x402008)+b"%10$s"用7个a先对齐,然后p32(addr),问题就来了,p32会填0,但是snprintf遇到0就直接终止了,导致%10$s没有进到s里但是如果用b"aaaaaaa"+p8(0x08)+p8(0x20)+p8(0x40)+b"%10$s"不填0,第10个参数又会多个%,不是00402008,是25402008貌似由于这个snprintf的存在,我没办法构造参数为00402008,因为遇到0就直接终止了,不知道各位有什么办法
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课