Sviluppatori di u prugettu Grsecurity
Duranti a prova di u patch, i sviluppatori anu nutatu chì quandu si custruisce, u compilatore mostra un avvirtimentu nantu à a mistura di codice è di definizione (a struttura hè stata definita dopu à u codice, assignendu un valore à una variabile esistente):
int index = n;
if (n < HBP_NUM) { index = array_index_nospec (index, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];
Linus hà accettatu
if (n < HBP_NUM) { int index = array_index_nospec (n, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];
In u lugliu, a correzione hè stata ancu purtata à i rami di kernel stabile 4.4, 4.9, 4.14, 4.19 è 5.2. I mantenitori di e rami stabili anu ancu scontru l'avvirtimentu è, invece di verificà per vede s'ellu era digià riparatu in u ramu maestru di Linus, anu fattu una correzione. U prublema hè chì senza veramente pensà à questu, solu
int index = n;
if (n < HBP_NUM ){ struct perf_event *bp = thread->ptrace_bps[index];
index = array_index_nospec (index, HBP_NUM);
Source: opennet.ru