Intel ν”„λ‘œμ„Έμ„œμ— λŒ€ν•œ Zombieload 곡격의 μƒˆλ‘œμš΄ 변쒅이 ν™•μΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

그라츠 κ³΅κ³ΌλŒ€ν•™(μ˜€μŠ€νŠΈλ¦¬μ•„) 연ꡬ원 폭둜 제3자 채널을 ν†΅ν•œ μƒˆλ‘œμš΄ 곡격 방법에 λŒ€ν•œ 정보 μ’€λΉ„λ‘œλ“œ 2.0 (CVE-2019-11135)λ₯Ό μ‚¬μš©ν•˜λ©΄ λ‹€λ₯Έ ν”„λ‘œμ„ΈμŠ€, 운영 체제, 가상 λ¨Έμ‹  및 보호된 μ—”ν΄λ ˆμ΄λΈŒ(TEE, Trusted Execution Environment)μ—μ„œ κΈ°λ°€ 정보λ₯Ό μΆ”μΆœν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” Intel ν”„λ‘œμ„Έμ„œμ—λ§Œ 영ν–₯을 λ―ΈμΉ©λ‹ˆλ‹€. 문제λ₯Ό μ°¨λ‹¨ν•˜λŠ” ꡬ성 μš”μ†Œ μ œμ•ˆ μ–΄μ œ λ§ˆμ΄ν¬λ‘œμ½”λ“œ μ—…λ°μ΄νŠΈ.

λ¬Έμ œλŠ” MDS(Microarchitectural Data Sampling) ν΄λž˜μŠ€μ— μ†ν•˜λ©° ν˜„λŒ€ν™”λœ λ²„μ „μž…λ‹ˆλ‹€. κ³΅κ°œλ˜λ‹€ 2.0μ›”μ—λŠ” ZombieLoad 곡격이 λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. ZombieLoad XNUMX은 λ‹€λ₯Έ MDS 곡격과 λ§ˆμ°¬κ°€μ§€λ‘œ λ§ˆμ΄ν¬λ‘œμ•„ν‚€ν…μ²˜ ꡬ쑰(예: Line Fill Buffer 및 Store Buffer)의 데이터에 μ‚¬μ΄λ“œ 채널 뢄석 κΈ°μˆ μ„ μ μš©ν•˜μ—¬ ν”„λ‘œμ„ΈμŠ€μ— μ‚¬μš©λ˜λŠ” 데이터λ₯Ό μž„μ‹œλ‘œ μ €μž₯ν•˜κ³  λ‘œλ“œ 및 μ €μž₯ μž‘μ—…μ„ μˆ˜ν–‰ν•©λ‹ˆλ‹€. .

μƒˆλ‘œμš΄ Zombieload 곡격 λ³€μ’… κ·Όκ±°κ°€μžˆλ‹€ TSX(νŠΈλžœμž­μ…˜ 동기화 ν™•μž₯) ν™•μž₯에 κ΅¬ν˜„λœ 비동기 μž‘μ—… 쀑단(TAA, TSX Asynchronous Abort) λ©”μ»€λ‹ˆμ¦˜μ˜ μž‘λ™ 쀑에 λ°œμƒν•˜λŠ” λˆ„μˆ˜μ— λŒ€ν•΄ νŠΈλžœμž­μ…˜ λ©”λͺ¨λ¦¬ μž‘μ—…μ„ μœ„ν•œ 도ꡬλ₯Ό μ œκ³΅ν•˜μ—¬ μ„±λŠ₯을 ν–₯μƒμ‹œν‚΅λ‹ˆλ‹€. λΆˆν•„μš”ν•œ 동기화 μž‘μ—…(ν—ˆμš©λ˜κ±°λ‚˜ 쀑단될 수 μžˆλŠ” μ§€μ›λ˜λŠ” μ›μž νŠΈλžœμž­μ…˜)을 λ™μ μœΌλ‘œ μ œκ±°ν•˜μ—¬ λ©€ν‹°μŠ€λ ˆλ“œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ΅¬ν˜„ν•©λ‹ˆλ‹€. μ€‘λ‹¨λ˜λ©΄ νŠΈλžœμž­μ…˜ λ©”λͺ¨λ¦¬ μ˜μ—­μ—μ„œ μˆ˜ν–‰λœ μž‘μ—…μ΄ λ‘€λ°±λ©λ‹ˆλ‹€.

νŠΈλžœμž­μ…˜ 쀑단은 λΉ„λ™κΈ°μ μœΌλ‘œ λ°œμƒν•˜λ©°, 이 μ‹œκ°„ λ™μ•ˆ λ‹€λ₯Έ μŠ€λ ˆλ“œλŠ” 폐기된 νŠΈλžœμž­μ…˜ λ©”λͺ¨λ¦¬ μ˜μ—­μ—μ„œλ„ μ‚¬μš©λ˜λŠ” μΊμ‹œμ— μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 비동기 νŠΈλžœμž­μ…˜ μ€‘λ‹¨μ˜ μ‹œμž‘λΆ€ν„° μ‹€μ œ μ™„λ£ŒκΉŒμ§€μ˜ μ‹œκ°„ λ™μ•ˆ ν”„λ‘œμ„Έμ„œκ°€ μž‘μ—…μ˜ μΆ”μΈ‘ μ‹€ν–‰ 쀑에 λ‚΄λΆ€ λ§ˆμ΄ν¬λ‘œμ•„ν‚€ν…μ²˜ λ²„νΌμ—μ„œ 데이터λ₯Ό 읽고 이λ₯Ό μΆ”μΈ‘ μž‘μ—…μœΌλ‘œ 전솑할 수 μžˆλŠ” 상황이 λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€. 그런 λ‹€μŒ 좩돌이 κ°μ§€λ˜κ³  μΆ”μΈ‘ μž‘μ—…μ΄ μ‚­μ œλ˜μ§€λ§Œ λ°μ΄ν„°λŠ” μΊμ‹œμ— 남아 있으며 뢀채널 μΊμ‹œ 볡ꡬ κΈ°μˆ μ„ μ‚¬μš©ν•˜μ—¬ 검색할 수 μžˆμŠ΅λ‹ˆλ‹€.

곡격은 TSX νŠΈλžœμž­μ…˜μ„ μ—΄κ³  비동기 쀑단을 μœ„ν•œ 쑰건을 μƒμ„±ν•˜λŠ” κ²ƒμœΌλ‘œ μš”μ•½λ©λ‹ˆλ‹€. 이 κΈ°κ°„ λ™μ•ˆ λ™μΌν•œ CPU μ½”μ–΄μ—μ„œ μˆ˜ν–‰λ˜λŠ” λ©”λͺ¨λ¦¬ 읽기 μž‘μ—…μ˜ λ°μ΄ν„°λ‘œ μΆ”μ •μ μœΌλ‘œ μ±„μ›Œμ§„ λ‚΄λΆ€ λ²„νΌμ˜ λ‚΄μš©μ΄ λˆ„μΆœλ˜λŠ” 쑰건이 λ°œμƒν•©λ‹ˆλ‹€. λˆ„μˆ˜λŠ” 곡격자의 μ½”λ“œκ°€ μ‹€ν–‰ 쀑인 ν˜„μž¬ 물리적 CPU μ½”μ–΄λ‘œ μ œν•œλ˜μ§€λ§Œ ν•˜μ΄νΌμŠ€λ ˆλ”© λͺ¨λ“œμ—μ„œλŠ” λ§ˆμ΄ν¬λ‘œμ•„ν‚€ν…μ²˜ 버퍼가 μ„œλ‘œ λ‹€λ₯Έ μŠ€λ ˆλ“œ 간에 κ³΅μœ λ˜λ―€λ‘œ λ‹€λ₯Έ CPU μŠ€λ ˆλ“œμ—μ„œ μˆ˜ν–‰λ˜λŠ” λ©”λͺ¨λ¦¬ μž‘μ—…μ΄ λˆ„μˆ˜λ  수 μžˆμŠ΅λ‹ˆλ‹€.

곡격 에 따라 5000μ„ΈλŒ€, 2.0μ„ΈλŒ€, XNUMXμ„ΈλŒ€ Intel Core ν”„λ‘œμ„Έμ„œμ˜ 일뢀 λͺ¨λΈκ³Ό Intel Pentium Gold, Intel Celeron XNUMX, Intel Xeon E, Intel Xeon W 및 XNUMXμ„ΈλŒ€ Intel Xeon Scalable이 μžˆμŠ΅λ‹ˆλ‹€. XNUMX월에 μΆœμ‹œλœ Cascade Lake λ§ˆμ΄ν¬λ‘œμ•„ν‚€ν…μ²˜λ₯Ό 기반으둜 ν•œ μƒˆλ‘œμš΄ Intel ν”„λ‘œμ„Έμ„œλŠ” μ²˜μŒμ—λŠ” RIDL 및 Fallout 곡격에 μ·¨μ•½ν•˜μ§€ μ•Šμ•˜μœΌλ‚˜ 곡격에 μ·¨μ•½ν•©λ‹ˆλ‹€. 연ꡬ원듀은 Zombieload XNUMX 외에도 μ»€λ„μ—μ„œ μ‚¬μš©μž κ³΅κ°„μœΌλ‘œ λŒμ•„κ°ˆ λ•Œ λ˜λŠ” μ œμ–΄κΆŒμ„ μ‚¬μš©μž κ³΅κ°„μœΌλ‘œ 전솑할 λ•Œ λ§ˆμ΄ν¬λ‘œμ•„ν‚€ν…μ²˜ λ²„νΌμ˜ λ‚΄μš©μ„ μ§€μš°λŠ” VERW λͺ…령을 μ‚¬μš©ν•˜μ—¬ 이전에 μ œμ•ˆλœ MDS 곡격 보호 방법을 μš°νšŒν•  κ°€λŠ₯성도 ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€. 게슀트 μ‹œμŠ€ν…œ.

Intel λ³΄κ³ μ„œμ— λ”°λ₯΄λ©΄ 이기쒅 λ‘œλ“œκ°€ μžˆλŠ” μ‹œμŠ€ν…œμ—μ„œλŠ” 곡격을 μˆ˜ν–‰ν•˜λŠ” λŠ₯λ ₯이 μ–΄λ ΅μŠ΅λ‹ˆλ‹€. λ§ˆμ΄ν¬λ‘œμ•„ν‚€ν…μ²˜ ꡬ쑰의 λˆ„μΆœμ€ μ‹œμŠ€ν…œμ˜ λͺ¨λ“  ν™œλ™μ„ ν¬κ΄„ν•˜κ³  κ³΅κ²©μžλŠ” μΆ”μΆœλœ λ°μ΄ν„°μ˜ μ†ŒμŠ€μ— 영ν–₯을 λ―ΈμΉ  수 μ—†κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. νŠΉμ • λ©”λͺ¨λ¦¬ μ£Όμ†Œμ™€ κ΄€λ ¨λœ 데이터λ₯Ό μ˜λ„μ μœΌλ‘œ κ°€λ‘œμ±„λŠ” λŠ₯λ ₯ 없이 λˆ„μΆœλ‘œ 인해 λ‚˜νƒ€λ‚˜λŠ” μ •λ³΄λ§Œ μΆ•μ ν•˜κ³  이 데이터 μ€‘μ—μ„œ μœ μš©ν•œ 정보λ₯Ό μ‹λ³„ν•˜λ €κ³  μ‹œλ„ν•  수 μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 연ꡬ진은 λ°œν‘œ ν”„λ‘œν† νƒ€μž…μ„ μ•…μš©ν•˜λ‹€,μ—μ„œ μž‘μ—… Linux ΠΈ Windowsλ˜ν•œ, 곡격을 톡해 루트 μ‚¬μš©μž μ•”ν˜Έμ˜ ν•΄μ‹œκ°’μ„ μ•Œμ•„λ‚Ό 수 μžˆλ‹€λŠ” κ°€λŠ₯성도 λ³΄μ—¬μ£Όμ—ˆμŠ΅λ‹ˆλ‹€.
μ–΄μ©Œλ©΄ λ‹€λ₯Έ 게슀트 μ‹œμŠ€ν…œ, 호슀트 ν™˜κ²½, ν•˜μ΄νΌλ°”μ΄μ € 및 Intel SGX μ—”ν΄λ ˆμ΄λΈŒμ˜ μž‘λ™μ— λ‚˜νƒ€λ‚˜λŠ” 데이터λ₯Ό μΆ•μ ν•˜κΈ° μœ„ν•΄ 게슀트 μ‹œμŠ€ν…œμ—μ„œ 곡격을 μˆ˜ν–‰ν•©λ‹ˆλ‹€.

λ™μ˜μƒ μž¬μƒ

취약점을 μ°¨λ‹¨ν•˜κΈ° μœ„ν•œ μˆ˜μ • 사항 포함 된 컀널 μ½”λ“œλ² μ΄μŠ€μ— Linux 그리고 ν•΄λ‹Ή λ¦΄λ¦¬μŠ€μ— ν¬ν•¨λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 5.3.11, 4.19.84, 4.14.154, 4.9.201 및 4.4.201. μ£Όμš” λ°°ν¬νŒμ— λŒ€ν•œ 컀널 및 λ§ˆμ΄ν¬λ‘œμ½”λ“œ μ—…λ°μ΄νŠΈλ„ 이미 λ¦΄λ¦¬μŠ€λ˜μ—ˆμŠ΅λ‹ˆλ‹€(Debian, μˆ˜μ„Έ/μ˜€ν”ˆμˆ˜μ„Έ, Ubuntu, RHEL, νŽ˜λ„λΌ, FreeBSD의). λ¬Έμ œλŠ” 4월에 ν™•μΈλ˜μ—ˆμœΌλ©° Intelκ³Ό 운영 체제 개발자 간에 μˆ˜μ • 사항이 μ‘°μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Zombieload 2.0을 μ°¨λ‹¨ν•˜λŠ” κ°€μž₯ κ°„λ‹¨ν•œ 방법은 CPUμ—μ„œ TSX 지원을 λΉ„ν™œμ„±ν™”ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μ»€λ„μ—μ„œ μ œμ•ˆν•œ 방법은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. Linux 이 νŒ¨μΉ˜μ—λŠ” μ—¬λŸ¬ μ™„ν™” μ˜΅μ…˜μ΄ ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 첫 번째 μ˜΅μ…˜μ€ "tsx=on/off/auto" λ§€κ°œλ³€μˆ˜λ₯Ό μ œκ³΅ν•˜λ©°, μ΄λŠ” CPUμ—μ„œ TSX ν™•μž₯ κΈ°λŠ₯을 ν™œμ„±ν™”ν• μ§€ μ—¬λΆ€λ₯Ό μ œμ–΄ν•©λ‹ˆλ‹€(auto 값은 μ·¨μ•½ν•œ CPU에 λŒ€ν•΄μ„œλ§Œ TSXλ₯Ό λΉ„ν™œμ„±ν™”ν•©λ‹ˆλ‹€). 두 번째 μ™„ν™” μ˜΅μ…˜μ€ "tsx_async_abort=off/full/full,nosmt" λ§€κ°œλ³€μˆ˜λ₯Ό 톡해 ν™œμ„±ν™”λ˜λ©°, μ»¨ν…μŠ€νŠΈ μŠ€μœ„μΉ˜ 쀑에 λ§ˆμ΄ν¬λ‘œμ•„ν‚€ν…μ²˜ 버퍼λ₯Ό μ§€μš°λŠ” λ°©μ‹μž…λ‹ˆλ‹€(nosmt ν”Œλž˜κ·ΈλŠ” SMT/ν•˜μ΄νΌμŠ€λ ˆλ“œλ₯Ό μΆ”κ°€λ‘œ λΉ„ν™œμ„±ν™”ν•©λ‹ˆλ‹€). μ‹œμŠ€ν…œμ˜ 취약점 λ…ΈμΆœ μ—¬λΆ€λ₯Ό ν™•μΈν•˜λ €λ©΄ sysfs에 제곡된 "/sys/devices/system/cpu/vulnerabilities/tsx_async_abort" λ§€κ°œλ³€μˆ˜λ₯Ό μ°Έμ‘°ν•˜μ‹­μ‹œμ˜€.

λ˜ν•œ, κ°±μ‹  λ§ˆμ΄ν¬λ‘œμ½”λ“œ 제거 λ‹€λ₯Έ 것 취약점 (CVE-2018-12207) Intel ν”„λ‘œμ„Έμ„œμ—μ„œλŠ” μ΅œμ‹  λ²„μ „μ—μ„œλ„ μ°¨λ‹¨λ©λ‹ˆλ‹€. κ°±μ‹  핡심 Linux. 취약점 그것은 수 μžˆμŠ΅λ‹ˆλ‹€ κΆŒν•œ μ—†λŠ” κ³΅κ²©μžκ°€ μ„œλΉ„μŠ€ κ±°λΆ€λ₯Ό μ‹œμž‘ν•˜μ—¬ μ‹œμŠ€ν…œμ΄ "λ¨Έμ‹  검사 였λ₯˜" μƒνƒœμ—μ„œ μ •μ§€λ˜λ„λ‘ ν•©λ‹ˆλ‹€.
λ‹€μŒμ„ ν¬ν•¨ν•œ 곡격 ν—Œμ‹ ν•  μˆ˜λ„ μžˆλ‹€ 게슀트 μ‹œμŠ€ν…œμ—μ„œ.

좜처 : opennet.ru

DDoS 보호, VPS VDS μ„œλ²„κ°€ μžˆλŠ” μ‚¬μ΄νŠΈλ₯Ό μœ„ν•œ μ•ˆμ •μ μΈ ν˜ΈμŠ€νŒ… κ΅¬μž… πŸ”₯ DDoS 곡격 λ°©μ§€ κΈ°λŠ₯이 νƒ‘μž¬λœ μ•ˆμ •μ μΈ μ›Ήμ‚¬μ΄νŠΈ ν˜ΈμŠ€νŒ…, VPS 및 VDS μ„œλ²„λ₯Ό κ΅¬λ§€ν•˜μ„Έμš” | ProHoster