เบเบนเปเบเบฑเบเบเบฐเบเบฒเปเบเบเบเบฒเบ Grsecurity
ะ ะฟัะพัะตััะต ัะตััะธัะพะฒะฐะฝะธั ะฟะฐััะฐ ัะฐะทัะฐะฑะพััะธะบะธ ะพะฑัะฐัะธะปะธ ะฒะฝะธะผะฐะฝะธะต, ััะพ ะฟัะธ ัะฑะพัะบะต ะบะพะผะฟะธะปััะพั ะฒัะฒะพะดะธั ะฟัะตะดัะฟัะตะถะดะตะฝะธะต ะพ ัะผะตัะธะฒะฐะฝะธะธ ะบะพะดะฐ ะธ ะพะฟัะตะดะตะปะตะฝะธะน (ััััะบัััะฐ ะฑัะปะฐ ะพะฟัะตะดะตะปะตะฝะฐ ะฟะพัะปะต ะบะพะดะฐ ั ะฟัะธัะฒะพะตะฝะธะตะผ ะทะฝะฐัะตะฝะธั ัััะตััะฒัััะตะน ะฟะตัะตะผะตะฝะฝะพะน):
int index = n;
if (n < HBP_NUM) {
index = array_index_nospec(index, HBP_NUM);
struct perf_event *bp = thread->ptrace_bps[index];
ะะธะฝัั ะฟัะธะฝัะป
if (n < HBP_NUM) { int index = array_index_nospec(n, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];
ะ ะธัะปะต ะธัะฟัะฐะฒะปะตะฝะธะต ัะฐะบะถะต ะฑัะปะพ ะฟะพััะธัะพะฒะฐะฝะพ ะฒ ััะฐะฑะธะปัะฝัะต ะฒะตัะบะธ ัะดัะฐ 4.4, 4.9, 4.14, 4.19 ะธ 5.2. ะกะพะฟัะพะฒะพะถะดะฐััะธะต ััะฐะฑะธะปัะฝัั
ะฒะตัะพะบ ัะฐะบะถะต ััะพะปะบะฝัะปะธัั ั ะฟัะตะดัะฟัะตะถะดะตะฝะธะตะผ ะธ ะฒะผะตััะพ ัะพะณะพ, ััะพะฑั ะฟัะพะฒะตัะธัั, ะฝะต ััััะฐะฝะตะฝะพ ะปะธ ะพะฝะพ ัะถะต ะฒ master-ะฒะตัะบะต ะะธะฝััะฐ, ัะพะฑััะฒะตะฝะฝะพัััะฝะพ ะฒะฝะตัะปะธ ะธัะฟัะฐะฒะปะตะฝะธะต. ะัะพะฑะปะตะผะฐ ะฒ ัะพะผ, ััะพ ะพะฝะธ, ะพัะพะฑะพ ะฝะต ะทะฐะดัะผัะฒะฐััั, ะฟัะพััะพ
int index = n;
if (n < HBP_NUM ){
struct perf_event *bp = thread->ptrace_bps[index];
index = array_index_nospec(index, HBP_NUM);
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru