Linux KernelÐÅϢй¶Îó²î£¨CVE-2020-28588£©

Ðû²¼Ê±¼ä 2021-04-28

0x00 Îó²î¸ÅÊö

CVE  ID

CVE-2020-28588

ʱ    ¼ä

2021-04-28

Àà   ÐÍ

ÐÅϢй¶

µÈ    ¼¶

¸ßΣ

Ô¶³ÌʹÓÃ


Ó°Ïì¹æÄ£


PoC/EXP

δ¹ûÕæ

ÔÚҰʹÓÃ


 

0x01 Îó²îÏêÇé

image.png

2021Äê04ÔÂ27ÈÕ£¬£¬£¬Cisco Talos¹ûÕæÅû¶ÁËÔÚLinuxÄÚºËÖз¢Ã÷µÄÒ»¸öÐÅϢй¶Îó²î £¨CVE-2020-28588£©¡£¡£¡£¡£¡£¡£¸ÃÎó²î±£´æÓÚÔËÐÐLinuxµÄ32λARM×°±¸µÄ/proc/pid/syscall¹¦Ð§ÖУ¬£¬£¬ÓÉÓÚÊýÖµÀàÐÍÖ®¼äµÄ¹ýʧת»»£¬£¬£¬¹¥»÷Õß¿ÉÒÔͨ¹ý¶ÁÈ¡/proc/<pid>/syscallÎļþÀ´Ê¹ÓôËÎó²î£¬£¬£¬ÒÔÉó²éÄں˿ÍÕ»ÄÚ´æÐÅÏ¢»òͨ¹ý´ËÎó²îÀ´Ê¹ÓÃÆäËüδÐÞ¸´µÄLinuxÎó²î¡£¡£¡£¡£¡£¡£

±ðµÄ£¬£¬£¬¹¥»÷Õß»¹¿ÉÒÔͨ¹ý´ËÐÅϢй¶Îó²îÈÆ¹ýKASLR¡£¡£¡£¡£¡£¡£Äں˵صã¿Õ¼ä½á¹¹Ëæ»ú»¯£¨KASLR£©ÊÇÒ»ÖÖ·´Ê¹ÓÃÊÖÒÕ£¬£¬£¬¿ÉÒÔ½«ÖÖÖÖ¹¤¾ßËæ»ú°²ÅÅ£¬£¬£¬ÒÔ±ÜÃâ±»¹¥»÷ÕßÍÆ²â¡£¡£¡£¡£¡£¡£

 

Îó²îϸ½Ú

/ProcÊÇÀàUnixϵͳÖеÄÒ»¸öÌØÊâµÄÐéÄâÎļþϵͳ£¬£¬£¬ÓÃÓÚ¶¯Ì¬µØ»á¼ûÄÚºËÖеÄÀú³ÌÊý¾Ý¡£¡£¡£¡£¡£¡£ËüÒÔÀàËÆÓÚÎļþµÄÌõÀí½á¹¹ÏÔʾÓйØÀú³ÌµÄÐÅÏ¢ºÍÆäËüϵͳÐÅÏ¢¡£¡£¡£¡£¡£¡£ÀýÈ磬£¬£¬Ëü°üÀ¨/proc/[pid]×ÓĿ¼£¬£¬£¬Ã¿¸ö×ÓĿ¼¶¼°üÀ¨ÎļþºÍ×ÓĿ¼£¬£¬£¬ÕâЩÎļþºÍ×ÓĿ¼°üÀ¨ÁËÓйØÌض¨Àú³ÌµÄÐÅÏ¢£¬£¬£¬¶øÕâЩÐÅÏ¢¿ÉÒÔͨ¹ýʹÓÃÏìÓ¦µÄÀú³ÌIDÀ´¶ÁÈ¡¡£¡£¡£¡£¡£¡£syscall ÎļþÊÇÒ»¸öÕýµ±µÄLinuxϵͳÎļþ£¬£¬£¬Ëü°üÀ¨ÄÚºËʹÓõÄϵͳŲÓÃÈÕÖ¾¡£¡£¡£¡£¡£¡£

/proc/pid/syscallÎļþ»á̻¶ϵͳŲÓúÅÂëºÍÄ¿½ñÀú³ÌÕýÔÚÖ´ÐеÄϵͳŲÓõIJÎÊý¼Ä´æÆ÷£¬£¬£¬ÒÔ¼°¿ÍÕ»Ö¸ÕëºÍ³ÌÐò¼ÆÊýÆ÷¼Ä´æÆ÷µÄÖµ¡£¡£¡£¡£¡£¡£ËäÈ»´ó´ó¶¼ÏµÍ³Å²ÓÃʹÓõļĴæÆ÷½ÏÉÙ£¬£¬£¬µ«ËùÓеÄÁù¸ö²ÎÊý¼Ä´æÆ÷µÄÖµ¶¼»á±»Ì»Â¶¡£¡£¡£¡£¡£¡£

¹¥»÷Õß¿ÉÒÔͨ¹ý¶ÁÈ¡/proc/<pid>/syscallÎļþÀ´Éó²éÄÚºËÄÚ´æÐÅÏ¢£¬£¬£¬Õâ¿ÉÒÔÔÚÄÚºËÉèÖÃÁËCONFIG_HAVE_ARCH_TRACEHOOKµÄÈκÎÌØ¶¨LinuxϵͳÉÏ¿´µ½Êä³ö£¬£¬£¬µ«¹¥»÷ÎÞ·¨ÔÚÔ¶³ÌÍøÂçÉϾÙÐмì²â¡£¡£¡£¡£¡£¡£

´¥·¢¸ÃÎó²îµÄshellÏÂÁîΪ£º

# echo 0 > /proc/sys/kernel/randomize_va_space (# only needed for a cleaner output)

$ while true; do cat /proc/self/syscall; done | uniq (# waits for changes)

$ while true; do free &>/dev/null; done (# triggers changes)

 

Ñо¿Ö°Ô±Ê×ÏÈÔÚAzure Sphere×°±¸£¨°æ±¾20.10£¬£¬£¬32λARM×°±¸£©ÉÏ·¢Ã÷ÁËÕâ¸öÎó²î£¬£¬£¬¸Ã×°±¸ÔËÐдòÁËÒ»¸ö²¹¶¡µÄLinuxÄںˡ£¡£¡£¡£¡£¡£Õâ¸öÎó²îÔÚv5.1-rc4£¨ÌύΪ631b7abacd02b88f4b0795c08b54ad4fc3e7c7c0£©ÖÐÒѾ­±»ÒýÈ룬£¬£¬µ«ÔÚv5.10-rc4ÖÐÈÔÈ»±£´æ£¬£¬£¬ÒÔÊÇÕâÖÐÐĵÄËùÓа汾ºÜ¿ÉÄܶ¼Êܵ½Ó°Ïì¡£¡£¡£¡£¡£¡£

 

Ó°Ïì¹æÄ£

v5.1-rc4 - v5.10-rc4

ÒѲâÊÔ°æ±¾£º

Linux Kernel v5.10-rc4

Linux Kernel v5.4.66

Linux Kernel v5.9.8

 

0x02 ´¦Öóͷ£½¨Òé

½¨ÒéÉý¼¶µ½×îа汾¡£¡£¡£¡£¡£¡£

ÏÂÔØÁ´½Ó£º

https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.12.tar.xz

 

0x03 ²Î¿¼Á´½Ó

https://blog.talosintelligence.com/2021/04/vuln-spotlight-linux-kernel.html

https://talosintelligence.com/vulnerability_reports/TALOS-2020-1211

https://threatpost.com/linux-kernel-bug-wider-cyberattacks/165640/

 

0x04 ʱ¼äÏß

2021-04-27  Cisco Talos¹ûÕæÎó²î

2021-04-28  VSRCÐû²¼Ç徲ͨ¸æ

 

0x05 ¸½Â¼

 

CVSSÆÀ·Ö±ê×¼¹ÙÍø£ºhttp://www.first.org/cvss/

image.png