“ WannaCry” บนระบบ Linux: คุณจะปกป้องตัวเองได้อย่างไร


73

จากบทความของ quick7 ระบุว่ามีบางรุ่นที่มีช่องโหว่ของSamba ที่อนุญาตให้เรียกใช้โค้ดจากระยะไกลบนระบบ Linux:

ในขณะที่WannaCry ransomworm ส่งผลกระทบต่อระบบ Windows และสามารถระบุได้อย่างง่ายดายด้วยขั้นตอนการแก้ไขที่ชัดเจนช่องโหว่Sambaจะส่งผลกระทบต่อระบบ Linux และ Unix และอาจมีอุปสรรคทางเทคนิคที่สำคัญในการรับหรือปรับใช้การแก้ไขที่เหมาะสม

CVE-2017-7494

Samba ทุกรุ่นตั้งแต่ 3.5.0 เป็นต้นไปมีความเสี่ยงต่อความเสี่ยงในการเรียกใช้โค้ดจากระยะไกลทำให้ไคลเอนต์ประสงค์ร้ายสามารถอัพโหลดไลบรารี่ที่แชร์ไปยังการแชร์ที่เขียนได้จากนั้นทำให้เซิร์ฟเวอร์โหลดและดำเนินการ

สถานการณ์การโจมตีที่เป็นไปได้:

เริ่มจากปัจจัยสองประการ:

  • ช่องโหว่ Samba ยังไม่ได้รับการแก้ไขในระบบ Linux บางตัว
  • มีช่องโหว่การเพิ่มระดับสิทธิพิเศษที่ไม่ได้รับการแก้ไขบนเคอร์เนล Linux บางเวอร์ชัน (ตัวอย่างเช่น CVE-2017-7308 บนเคอร์เนล Ubuntu 4.8.0-41-generic)

ผู้โจมตีสามารถเข้าถึงเครื่อง Linux และยกระดับสิทธิพิเศษในการใช้ประโยชน์จากช่องโหว่ในท้องถิ่นเพื่อให้เข้าถึงรากและติดตั้ง ramsomware ในอนาคตได้คล้ายกับจำลองนี้ขึ้น WannaCry ransomware สำหรับลินุกซ์

ปรับปรุง

บทความใหม่ล่าสุด"คำเตือน! แฮกเกอร์เริ่มใช้" SambaCry Flaw "เพื่อแฮ็กระบบ Linux"สาธิตวิธีการใช้ข้อบกพร่อง Sambacry เพื่อติดเชื้อเครื่อง linux

การคาดการณ์ออกมาค่อนข้างแม่นยำเนื่องจาก honeypots ที่จัดตั้งขึ้นโดยทีมนักวิจัยจากKaspersky Labได้ทำการตรวจจับแคมเปญมัลแวร์ที่ใช้ช่องโหว่ของ SambaCry ในการติดเชื้อคอมพิวเตอร์ Linux ด้วยซอฟต์แวร์การขุด cryptocurrency

วิจัยด้านความปลอดภัยอีกอมรีเบน Bassat ค้นพบอิสระแคมเปญเดียวกันและตั้งชื่อว่า"EternalMiner"

ตามที่นักวิจัยกลุ่มแฮ็กเกอร์ที่ไม่รู้จักได้เริ่มทำการลักลอบพีซีลีนุกซ์เพียงหนึ่งสัปดาห์หลังจากที่ข้อบกพร่องของ Samba ได้รับการเปิดเผยต่อสาธารณะและติดตั้ง "CPUminer" ซึ่งเป็นซอฟต์แวร์การทำเหมือง cryptocurrency

หลังจากประนีประนอมกับเครื่องที่มีช่องโหว่โดยใช้ช่องโหว่ SambaCry ผู้โจมตีจะเรียกใช้งานเพย์โหลดสองตัวบนระบบเป้าหมาย:

INAebsGB.so - reverse-shell ที่ให้การเข้าถึงระยะไกลแก่ผู้โจมตี

cblRWuoCc.so - ลับๆที่มียูทิลิตี้การขุด cryptocurrency - CPUminer

รายงาน TrendLab โพสต์เมื่อวันที่ 18 กรกฎาคม 2017: ผู้ใช้ Linux ขอให้อัปเดตเป็นภัยคุกคามใหม่ใช้ประโยชน์ SambaCry

ฉันจะรักษาความปลอดภัยระบบ Linux เพื่อป้องกันการถูกโจมตีได้อย่างไร


22
WannaCry เป็นมัลแวร์ Windows ไวรัสยูนิกซ์สามารถเขียนขึ้นมาหาประโยชน์จากปัญหาที่ไม่เกี่ยวข้องกับการใช้โพรโทคอลเดียวกันนี้โดยไม่เกี่ยวข้อง แต่สิ่งนี้ไม่เกี่ยวข้องกับมัลแวร์ของ windows ลิงค์นี้ที่คุณมอบให้กับ WannaCry for Linux เป็นเรื่องหลอกลวงจากการคัดลอกแหล่งที่มาดูเหมือนว่าผลลัพธ์จากกราฟิกบางรายการ "สร้าง gui ของคุณเอง" - ซอฟต์แวร์โดยไม่มีโปรแกรมจริงใด ๆ แต่ GUI ที่ไม่ทำอะไรเลย
ไม่มีใคร

2
@ GAD3R ใช้ iPhone ของฉันกับ Google Translate / โหมดกล้องความคิดเห็นในภาษาจีนบอกว่าแน่นอนแหล่งที่มาไม่สมบูรณ์ ฉันอยากจะแนะนำการทำงานซ้ำคำถามรอบ CVE การลบลิงค์ github และไม่เกี่ยวกับ ransomware ที่ยังไม่มีอยู่ หรือถ้าคุณยังต้องการที่จะหลีกเลี่ยงความคิดนั้นทำให้ลิงก์ github นั้นเป็นเพียงการจำลองของความคิดนั้น
Rui F Ribeiro

8
@ GAD3R ใช่ถ้าใครบางคนสามารถเข้าถึงระบบของฉันจากระยะไกลด้วยสิทธิ์ระดับสูงมันเป็นเรื่องที่เจ็บปวดน้อยมากที่จะใช้ยูทิลิตี้ Linux ดั้งเดิมเพื่อเข้ารหัสฮาร์ดไดรฟ์ของฉันและเขียน QT GUI เช่นนั้นในการหลอกลวง คุณลักษณะที่แท้จริงทั้งหมด (เช่นการแพร่กระจาย) ของ WannaCry ขึ้นอยู่กับการหาประโยชน์ของ Windows การกล่าวถึง "WannaCry" เป็นการคลิกเพื่อหลอกล่อบริสุทธิ์และเรียบง่าย
ไม่มีใคร

6
@ ไม่มีใครมีความเป็นธรรมมากพอฉันเชื่อว่า OP นั้นสุจริตและไม่ทราบว่ามันเป็นแค่ GUI เราไม่ใช่ชาวจีนในการอ่านความคิดเห็นและในขณะที่เขาพูดว่าเขาไม่เชี่ยวชาญในการอ่านซอร์สโค้ด; IMO แนวระหว่างช่องโหว่ทั้งสองทำให้การกำหนดเวลายังเหมาะสม ให้มันหย่อนบ้าง อย่างไรก็ตามความหมายของ CVE นั้นน่าเป็นห่วง
Rui F Ribeiro

3
IMO ฉันจะไม่แนะนำให้ปิดคำถามหากมีคนมีความคิดที่แตกต่างออกไป ฉันได้ทำใหม่ข้อความคำถามเพื่อไม่พูดถึง ransomware ที่ยังไม่ได้ทำ วิธีแก้ปัญหาที่ฉันพูดถึงมีประโยชน์อย่างน้อยในระบบเดิมที่เรายังมีอยู่
Rui F Ribeiro

คำตอบ:


102

ช่องโหว่ใหม่ของแซมบ้านี้ถูกเรียกว่า "Sambacry" ในขณะที่ช่องโหว่ดังกล่าวระบุว่า "Eternal Red Samba" ได้ประกาศในทวิตเตอร์ (สมเหตุสมผล) ว่า:

Samba bug, metasploit one-liner ที่จะทริกเกอร์คือ: simple.create_pipe ("/ path / to / target.so")

เวอร์ชันที่ได้รับผลกระทบจาก Samba นั้นมาจาก Samba 3.5.0 ถึง 4.5.4 / 4.5.10 / 4.4.14

หากการติดตั้ง Samba ของคุณตรงตามการกำหนดค่าที่อธิบายไว้ด้านล่างการแก้ไข / อัพเกรดควรทำโดยเร็วที่สุดเนื่องจากมีช่องโหว่อยู่แล้วช่องโหว่อื่น ๆในโมดูลไพธ อนและ โมดูลmetasploit

อื่น ๆ ที่น่าสนใจพอมีอยู่แล้ว add-on กับ honeypot รู้จากHoneynetโครงการDionaeaทั้ง WannaCry และSambaCry ปลั๊กอิน

แซมบ้าร้องไห้น่าจะเป็นแล้วถูก (AB) ที่ใช้ในการติดตั้งมากขึ้นการเข้ารหัสลับของคนงานเหมือง "EternalMiner" หรือสองครั้งลงเป็นหยดมัลแวร์ในอนาคต

honeypots ที่จัดตั้งขึ้นโดยทีมนักวิจัยจาก Kaspersky Lab ได้ทำการตรวจจับแคมเปญมัลแวร์ที่ใช้ประโยชน์จากช่องโหว่ SambaCry เพื่อติดเชื้อคอมพิวเตอร์ Linux ด้วยซอฟต์แวร์การขุด cryptocurrency Omri Ben Bassat นักวิจัยด้านความปลอดภัยอีกคนหนึ่งค้นพบแคมเปญเดียวกันและตั้งชื่อมันว่า "EternalMiner"

วิธีแก้ปัญหาให้คำแนะนำสำหรับระบบที่มีการติดตั้ง Samba (ซึ่งในปัจจุบันก็คือการแจ้งให้ทราบ CVE) ก่อนการปรับปรุงจะถูกเพิ่มไปsmb.conf:

nt pipe support = no

(และเริ่มบริการ Samba ใหม่)

นี่ควรจะปิดการใช้งานการตั้งค่าที่เปิด / ปิดความสามารถในการทำการเชื่อมต่อที่ไม่ระบุชื่อกับบริการไปป์ที่มีชื่อว่า IPC ของ windows จากman samba:

นักพัฒนาทั่วโลกใช้ตัวเลือกนี้เพื่ออนุญาตหรือไม่อนุญาตให้ไคลเอนต์ Windows NT / 2000 / XP สามารถเชื่อมต่อกับ SMB IPC $ ไปป์ที่ระบุได้ ในฐานะผู้ใช้คุณไม่จำเป็นต้องแทนที่ค่าเริ่มต้น

อย่างไรก็ตามจากประสบการณ์ภายในของเราดูเหมือนว่าการแก้ไขจะเข้ากันไม่ได้กับรุ่นเก่าหรือไม่ Windows version (อย่างน้อยลูกค้า Windows 7 บางรายดูเหมือนจะไม่สามารถใช้งานได้nt pipe support = no) และเส้นทางการแก้ไขดังกล่าวสามารถติดตั้งหรือแม้แต่การรวบรวม Samba ได้

โดยเฉพาะอย่างยิ่งการแก้ไขนี้ปิดใช้งานการแชร์รายชื่อจากไคลเอนต์ Windows และหากใช้จะต้องระบุเส้นทางแบบเต็มของการแบ่งปันด้วยตนเองเพื่อให้สามารถใช้งานได้

วิธีแก้ปัญหาอื่น ๆ ที่รู้จักคือการทำให้แน่ใจว่าการติดตั้งใช้งานร่วมกับnoexecตัวเลือก สิ่งนี้จะป้องกันการดำเนินการของไบนารีที่อยู่ในระบบไฟล์ที่ติดตั้ง

อย่างเป็นทางการที่มารักษาความปลอดภัยแพทช์รหัสคือที่นี่จากหน้าการรักษาความปลอดภัย samba.org

Debian แล้วผลักเมื่อวานนี้ (24/5) การปรับปรุงออกประตูและแจ้งให้ทราบล่วงหน้าการรักษาความปลอดภัยที่สอดคล้องDSA-3860-1 samba

ในการตรวจสอบว่าช่องโหว่นั้นได้รับการแก้ไขใน Centos / RHEL / Fedora และ derivates หรือไม่ให้ทำ:

#rpm -q –changelog samba | grep -i CVE
– resolves: #1450782 – Fix CVE-2017-7494
– resolves: #1405356 – CVE-2016-2125 CVE-2016-2126
– related: #1322687 – Update CVE patchset

ขณะนี้มีnmapสคริปต์การตรวจจับ: samba-vuln-cve-2017-7494.nse สำหรับการตรวจจับเวอร์ชัน Samba หรือnmapสคริปต์ที่ดีกว่ามากที่ตรวจสอบว่าบริการมีความเสี่ยงที่http://seclists.org/nmap-dev/2017/q2/att-110/samba-vuln-cve -2017-7494.nseคัดลอกไปยัง/usr/share/nmap/scriptsแล้วอัปเดตnmapฐานข้อมูลหรือเรียกใช้ดังนี้:

nmap --script /path/to/samba-vuln-cve-2017-7494.nse -p 445 <target>

เกี่ยวกับมาตรการระยะยาวเพื่อปกป้องบริการ SAMBA: โปรโตคอล SMB ไม่ควรถูกเสนอโดยตรงกับอินเทอร์เน็ตในวงกว้าง

มันยังไปโดยไม่บอกว่า SMB เป็นโปรโตคอลที่ซับซ้อนเสมอและบริการประเภทนี้ควรถูกไฟร์วอลล์และ จำกัด เครือข่ายภายใน [ซึ่งเป็นบริการที่]

เมื่อต้องการการเข้าถึงระยะไกลไม่ว่าจะที่บ้านหรือโดยเฉพาะกับเครือข่ายขององค์กรการเข้าถึงเหล่านั้นควรทำได้ดีกว่าโดยใช้เทคโนโลยี VPN

ตามปกติในสถานการณ์นี้หลักการ Unix ของการติดตั้งและเปิดใช้งานบริการขั้นต่ำที่ต้องการเท่านั้น

นำมาจากการหาประโยชน์เอง:

Eternal Red Samba Exploit - CVE-2017-7494
ทำให้เซิร์ฟเวอร์ Samba เสี่ยงต่อการโหลดไลบรารี่ที่แชร์ในบริบทของรูท
ไม่จำเป็นต้องใช้ข้อมูลรับรองหากเซิร์ฟเวอร์มีบัญชีผู้เยี่ยมชม
สำหรับการใช้ประโยชน์จากระยะไกลคุณต้องมีสิทธิ์ในการเขียนอย่างน้อยหนึ่งรายการ
Eternal Red จะสแกนเซิร์ฟเวอร์ Samba เพื่อดูว่าสามารถแชร์ได้ที่ใด นอกจากนี้ยังจะกำหนดเส้นทางแบบเต็มของการแชร์ระยะไกล

    For local exploit provide the full path to your shared library to load.  

    Your shared library should look something like this

    extern bool change_to_root_user(void);
    int samba_init_module(void)
    {
        change_to_root_user();
        /* Do what thou wilt */
    }

เป็นที่รู้จักกันว่าระบบที่เปิดใช้งาน SELinux นั้นไม่เสี่ยงต่อการถูกโจมตี

ดูข้อบกพร่อง Samba อายุ 7 ปีให้แฮกเกอร์เข้าถึงหลายพันเครื่อง Linux ได้จากระยะไกล

ตามเครื่องมือค้นหาคอมพิวเตอร์ Shodan พบว่าคอมพิวเตอร์ที่เปิดใช้งาน Samba มากกว่า 485,000 เครื่องเปิดเผยพอร์ต 445 บนอินเทอร์เน็ตและจากการวิจัยของ Rapid7 พบว่าปลายทางที่สัมผัสกับอินเทอร์เน็ตมากกว่า 104,000 คนนั้นดูเหมือนว่ากำลังใช้งาน Samba รุ่นที่มีช่องโหว่ ใช้งานแซมบ้ารุ่นที่ไม่รองรับ

เนื่องจาก Samba เป็นโปรโตคอล SMB ที่ใช้กับระบบ Linux และ UNIX ดังนั้นผู้เชี่ยวชาญบางคนจึงกล่าวว่าเป็น "EternalBlue รุ่น Linux" ที่ใช้โดย WannaCry ransomware

... หรือฉันควรจะพูดว่า SambaCry?

เมื่อคำนึงถึงจำนวนของระบบที่มีช่องโหว่และง่ายต่อการใช้ประโยชน์จากช่องโหว่นี้ข้อบกพร่องของ Samba อาจถูกนำไปใช้ประโยชน์ในวงกว้างด้วยความสามารถแบบเวิร์ม

เครือข่ายในบ้านที่มีอุปกรณ์จัดเก็บข้อมูลแบบเครือข่าย (NAS) (ที่รัน Linux) อาจมีช่องโหว่ต่อข้อบกพร่องนี้ได้เช่นกัน

ดูเพิ่มเติมข้อผิดพลาดในการเรียกใช้โค้ดที่หนอนได้แฝงตัวอยู่ใน Samba เป็นเวลา 7 ปี แก้ไขทันที!

ข้อบกพร่องอายุเจ็ดปีซึ่งจัดทำดัชนีเป็น CVE-2017-7494 สามารถใช้ประโยชน์ได้อย่างน่าเชื่อถือด้วยรหัสเพียงหนึ่งบรรทัดในการเรียกใช้รหัสที่เป็นอันตรายตราบใดที่ตรงตามเงื่อนไขบางประการ ข้อกำหนดเหล่านั้นรวมถึงคอมพิวเตอร์ที่มีช่องโหว่ที่:

(a) ทำให้พอร์ตการแชร์ไฟล์และเครื่องพิมพ์ 445 สามารถเข้าถึงได้บนอินเทอร์เน็ต
(b) กำหนดค่าไฟล์ที่แชร์เพื่อให้มีสิทธิ์ในการเขียนและ
(c) ใช้เส้นทางเซิร์ฟเวอร์ที่รู้จักหรือสามารถเดาได้สำหรับไฟล์เหล่านั้น

เมื่อเงื่อนไขเหล่านั้นเป็นที่พึงพอใจผู้โจมตีจากระยะไกลสามารถอัปโหลดโค้ดใด ๆ ที่พวกเขาเลือกและทำให้เซิร์ฟเวอร์ดำเนินการได้โดยอาจได้รับสิทธิพิเศษรูทที่ไม่ต้องพึ่งพาทั้งนี้ขึ้นอยู่กับแพลตฟอร์มที่มีช่องโหว่

เมื่อพิจารณาถึงความง่ายและความน่าเชื่อถือของช่องโหว่ช่องโหว่นี้จะคุ้มค่าโดยเร็วที่สุด อาจเป็นเรื่องของเวลาจนกว่าผู้โจมตีจะเริ่มกำหนดเป้าหมายอย่างแข็งขัน

นอกจากนี้อย่างรวดเร็ว 7 - ปะ CVE-2017-7494 ในแซมบ้า: มันเป็นวงกลมของชีวิต

และอื่น ๆ อีกSambaCry: ลินุกซ์ผลสืบเนื่องไป WannaCry

ข้อเท็จจริงที่ต้องรู้

CVE-2017-7494 มีคะแนน CVSS 7.5 (CVSS: 3.0 / AV: N / AC: H / PR: L / UI: N / S: U / C: H / I: H / A: H) 3.

ขอบเขตการคุกคาม

ข้อความค้นหา shodan.io ของ "พอร์ต: 445! os: windows" แสดงโฮสต์ที่ไม่ใช่ Windows ประมาณหนึ่งล้านโฮสต์ที่เปิดใช้งาน tcp / 445 บนอินเทอร์เน็ตมากกว่าครึ่งหนึ่งอยู่ในสหรัฐอาหรับเอมิเรตส์ (36%) และ สหรัฐอเมริกา (16%) ในขณะที่หลาย ๆ คนอาจใช้เวอร์ชั่นที่ได้รับการปะแก้ แต่มีการป้องกันของ SELinux หรือไม่ตรงกับเกณฑ์ที่จำเป็นสำหรับการใช้ประโยชน์จากช่องโหว่นี้

PS การแก้ไขคอมมิชชันในโครงการ SAMBA github ดูเหมือนจะยอมรับ 02a76d86db0cbe79fcaf1a500630e24d961fa149


2
ยินดี. ฉันจะเพิ่มว่าในเขตเวลาของฉันฉันทำตามประกาศความปลอดภัยของเดเบียนเมื่อวานนี้เวลา 9:00 น.
Rui F Ribeiro

6
ต่างจากใน Windows แต่แซมบ้าไม่ได้เป็นค่าเริ่มต้นใน distros Linux ส่วนใหญ่ใช่มั้ย
ฟาเอล

1
@raphael แน่นอน แต่ถ้าฉันได้รับเพนนีสำหรับเซิร์ฟเวอร์ทุกเครื่องที่ฉันพบพร้อมกับชุดดีวีดีหลักที่ติดตั้ง ... ฉันได้แก้ไขคำตอบเล็กน้อยเพื่อตอบความคิดนั้น
Rui F Ribeiro

9
เท่าที่ฉันสามารถบอกได้ว่าสคริปต์ nmap เพียงตรวจสอบเวอร์ชันของ samba ไม่ใช่ว่าคุณมีช่องโหว่ AFAICT เพื่อใช้ประโยชน์จากช่องโหว่นี้จำเป็นต้องอัปโหลดไฟล์ไปยังเซิร์ฟเวอร์ ดังนั้นช่องโหว่จึงไม่ร้ายแรงเท่ากับ Eternalblue Windows one หากคุณอนุญาตให้อัปโหลดไฟล์ผ่านอินเทอร์เน็ตโดยไม่ต้องมีการตรวจสอบสิทธิ์คุณมีปัญหาว่าแซมบ้ามีความเสี่ยงหรือไม่
Stéphane Chazelas

1
@ StéphaneChazelasขอบคุณฉันยังไม่มีเวลาตรวจสอบสคริปต์
Rui F Ribeiro

21

พวกเราส่วนใหญ่ที่ใช้งานเซิร์ฟเวอร์ Samba อาจมีอยู่ใน LAN หลังไฟร์วอลล์และไม่เปิดเผยพอร์ตโดยตรงสู่โลกภายนอก

มันจะเป็นการปฏิบัติที่น่ากลัวหากคุณทำเช่นนั้นและวิธีการที่ไม่ย่อท้อเมื่อมีโซลูชัน VPN ที่เรียบง่ายมีประสิทธิภาพและฟรี (เหมือนเบียร์และคำพูด) VPN เช่น OpenVPN SMB ไม่ได้ออกแบบมาพร้อมกับเปิดอินเทอร์เน็ตในใจ (heck, TCP / IP มาเป็นความคิดในโปรโตคอลนั้น) และควรได้รับการปฏิบัติเช่นนี้ ข้อเสนอแนะเพิ่มเติมกำลังเรียกใช้กฎของไฟร์วอลล์บนโฮสต์ไฟล์ร่วมกันเกิดขึ้นจริงที่อนุญาตพิเศษในประเทศ (และในที่สุดก็ VPN) adresses เครือข่ายบนพอร์ตทั้งหมด SMB ( 139/TCP, 445/TCP, 137/UDPและ138/UDP)

นอกจากนี้หากกรณีการใช้งานของคุณอนุญาตคุณควรพิจารณาใช้ Samba ที่ไม่มีสิทธิ์ใช้งาน (เช่นsambaผู้ใช้ที่ไม่ใช่นามแฝงroot) ฉันเข้าใจว่ามันไม่ใช่เรื่องง่ายที่จะแต่งงานกับข้อ จำกัด ของ NT ACL กับ POSIX ACL ด้วยการตั้งค่านี้ แต่ถ้าเป็นไปได้ที่จะทำเช่นนั้นในการตั้งค่าเฉพาะของคุณมันเป็นวิธีที่จะไป

สุดท้ายแม้จะมีเช่น "ออกโรง" ก็ยังคงแนะนำให้ใช้แพทช์ถ้าคุณสามารถ (เพราะมีกล่อง NAS ออกมีที่ที่ไม่อาจจะเป็นไปได้) และเพื่อทดสอบว่ากรณีการใช้งานของคุณโดยเฉพาะการทำงานร่วมกับชุดnt pipe supportno


4
“ มันสามารถเข้าถึงได้บนอินทราเน็ตเท่านั้น” อาจเป็นสิ่งที่ผู้ดูแลระบบบางคนใน บริษัท ที่ WannaCry เผยแพร่
Carsten S
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.