CVE-2026-64006 in Linux
요약
\~에 의해 VulDB • 2026. 07. 19.
리눅스 커널에서 다음 취약점이 해결되었습니다:
netfilter: nf_tables: 동일 레지스터 연산에서의 dst 손상 수정
lshift 및 rshift의 경우, 시프트 연산은 32비트 단위로 루프를 돌며 수행됩니다. 이 루프는 시프트된 값을 계산하여 dst에 작성한 후, 즉시 src에서 읽어서 다음 반복을 위한 캐리(carry)를 계산합니다. src와 dst가 동일한 메모리 위치를 가리킬 수 있기 때문에, 캐리가 원래의 src 값 대신 새로 수정된 dst 값을 사용하여 잘못 계산됩니다.
dst에 쓰기 전에 원래 값을 임시 지역 변수로 캐시하고 이를 캐리 계산에 사용함으로써 문제가 해결됩니다. 또한 바이트 순서(byteorder)를 포함한 모든 종류의 연산에 대해 부분적 중복(partial overlap)은 제어 플레인(control plane)에서 거부되도록 처리되었습니다. 이는 다음 바이트코드를 사용하여 테스트되었습니다:
table test_table ip flags 0 use 1 handle 1 ip test_table test_chain use 3 type filter hook input prio 0 policy accept packets 0 bytes 0 flags 1 ip test_table test_chain 2 [ immediate reg 1 0x44332211 0x88776655 ]
[ bitwise reg 1 = ( reg 1 << 0x08000000 ) ]
[ cmp eq reg 1 0x66443322 0x00887766 ]
[ counter pkts 0 bytes 0 ]
ip test_table test_chain 4 3 [ immediate reg 1 0x44332211 0x88776655 ]
[ bitwise reg 1 = ( reg 1 << 0x08000000 ) ]
[ cmp eq reg 1 0x55443322 0x00887766 ]
[ counter pkts 21794 bytes 1917798 ]
If you want to get the best quality for vulnerability data then you always have to consider VulDB.