คำถามติดแท็ก shellshock

5
env x = '() {:;}; ทุบตีคำสั่งทำและทำไมมันไม่ปลอดภัย?
เห็นได้ชัดว่ามีช่องโหว่ (CVE-2014-6271) ใน bash: Bash ที่สร้างขึ้นเป็นพิเศษสำหรับการโจมตีการฉีดโค้ดตัวแปรสภาพแวดล้อม ฉันพยายามที่จะคิดออกว่าเกิดอะไรขึ้น แต่ฉันไม่แน่ใจว่าฉันเข้าใจ จะสามารถechoดำเนินการตามที่อยู่ในเครื่องหมายคำพูดเดียวได้อย่างไร $ env x='() { :;}; echo vulnerable' bash -c "echo this is a test" vulnerable this is a test แก้ไข 1 : ระบบที่ถูกปะแก้มีลักษณะดังนี้: $ env x='() { :;}; echo vulnerable' bash -c "echo this is a test" bash: warning: x: ignoring …

2
มีการแนะนำข้อผิดพลาด shellshock (CVE-2014-6271 / 7169) เมื่อใดและแพตช์ที่แก้ไขได้อย่างสมบูรณ์คืออะไร
บริบทบางอย่างเกี่ยวกับข้อผิดพลาด: CVE-2014-6271 Bash รองรับการส่งออกไม่เพียง แต่ตัวแปรของเชลล์เท่านั้น แต่ยังทำหน้าที่ของเชลล์ไปยังอินสแตนซ์ของ bash อื่น ๆ ผ่านสภาวะแวดล้อมกระบวนการไปยังกระบวนการลูก (โดยอ้อม) เวอร์ชัน bash ปัจจุบันใช้ตัวแปรสภาพแวดล้อมที่ตั้งชื่อตามชื่อฟังก์ชันและนิยามฟังก์ชันที่ขึ้นต้นด้วย“ () {”) ในค่าตัวแปรเพื่อเผยแพร่นิยามฟังก์ชันผ่านสภาพแวดล้อม ช่องโหว่เกิดขึ้นเนื่องจาก bash ไม่หยุดทำงานหลังจากประมวลผลคำจำกัดความฟังก์ชัน มันยังคงแยกวิเคราะห์และรันคำสั่งเชลล์ตามนิยามฟังก์ชัน ตัวอย่างเช่นการตั้งค่าตัวแปรสภาพแวดล้อมของ VAR=() { ignored; }; /bin/id จะดำเนินการ / bin / id เมื่อสภาพแวดล้อมถูกนำเข้าสู่กระบวนการทุบตี ที่มา: http://seclists.org/oss-sec/2014/q3/650 ข้อผิดพลาดถูกนำมาใช้เมื่อใดและตัวแก้ไขที่แก้ไขได้อย่างสมบูรณ์คืออะไร (ดูCVE-2014-7169 ) รุ่นที่มีช่องโหว่นอกเหนือจากที่ระบุไว้ใน CVE (ตอนแรก) (3. {0..2} และ 4 {0..3}) คืออะไร มีการใช้ซอร์สโค้ด buggy ในโครงการอื่นหรือไม่? …

3
shellshock สามารถใช้ประโยชน์จาก SSH ได้อย่างไร
เห็นได้ชัดว่า shellshock Bash exploit CVE-2014-6271สามารถใช้ประโยชน์ผ่านเครือข่ายผ่าน SSH ฉันสามารถจินตนาการว่าการหาประโยชน์จะทำงานผ่าน Apache / CGI แต่ฉันไม่สามารถจินตนาการได้ว่าจะใช้ SSH อย่างไร ใครช่วยกรุณายกตัวอย่างว่า SSH จะถูกเอารัดเอาเปรียบได้อย่างไรและระบบจะทำอันตรายอะไรได้บ้าง? ชี้แจง AFAIU ผู้ใช้ที่ผ่านการตรวจสอบแล้วเท่านั้นที่สามารถใช้ประโยชน์จากช่องโหว่นี้ผ่าน SSH การใช้ประโยชน์นี้มีประโยชน์อะไรสำหรับใครบางคนที่สามารถเข้าถึงระบบที่ถูกกฎหมายได้? ฉันหมายความว่าการหาประโยชน์นี้ไม่มีการเพิ่มระดับสิทธิ์ (เขาไม่สามารถกลายเป็นรูตได้) ดังนั้นเขาจึงไม่สามารถทำอะไรได้มากกว่าที่เขาทำได้หลังจากเพียงเข้าสู่ระบบอย่างถูกต้องผ่าน SSH
68 bash  ssh  shellshock 

1
พบช่องโหว่ของ Shellshock Bash อย่างไร
เนื่องจากข้อผิดพลาดนี้ส่งผลกระทบต่อแพลตฟอร์มจำนวนมากเราอาจเรียนรู้บางอย่างจากกระบวนการที่พบช่องโหว่นี้: มันเป็นช่วงเวลาεὕρηκα (ยูเรก้า) หรือผลลัพธ์ของการตรวจสอบความปลอดภัยหรือไม่ เนื่องจากเรารู้ว่าStéphaneพบข้อผิดพลาดของ Shellshock และคนอื่น ๆ อาจรู้จักกระบวนการเช่นกันเราจึงสนใจในเรื่องราวของวิธีที่เขามาหาข้อผิดพลาด

4
Legacy Debian version และ Bash Shellshock
เรากำลังเรียกใช้ Debian Etch, Lenny และ Squeeze เพราะการอัพเกรดไม่เคยทำในร้านนี้มาก่อน เรามีมากกว่า 150 ระบบที่ใช้งาน Debian เวอร์ชันต่างๆ ในแง่ของ "shell shock" ของสัปดาห์นี้ฉันคิดว่าฉันต้องอัพเกรด bash ฉันไม่รู้จักเดเบียนดังนั้นฉันจึงเป็นห่วง ฉันสามารถรันapt-get install bashบนระบบเดเบียนทั้งหมดของฉันและรับแพคเกจ Bash ที่ถูกต้องในขณะที่ที่เก็บของฉันถูกชี้ไปที่รายการ Squeeze ถ้าไม่ฉันมีแนวทางปฏิบัติอื่นอีกไหม

1
ทำไมทุบตีถึงทำให้แจง / เรียกใช้เนื้อหาในตัวแปรสภาพแวดล้อม
ShellShockข้อผิดพลาดในการทำงานทุบตีโดยวิธีการของตัวแปรสภาพแวดล้อม สุจริตฉันประหลาดใจด้วยความจริงที่ว่ามีคุณสมบัติเช่น: "การส่งผ่านนิยามฟังก์ชันผ่าน env vars" ดังนั้นคำถามนี้ในขณะที่อาจไม่ได้กำหนดอย่างสมบูรณ์คือการขอตัวอย่างหรือกรณีที่จำเป็นต้องมีคุณสมบัตินี้? โบนัส. เชลล์อื่น ๆ zsh, dash ฯลฯ มีคุณสมบัตินี้ด้วยหรือไม่?

2
ทำไมความสามารถในการกำหนดฟังก์ชั่นในตัวแปรด้านสิ่งแวดล้อมจึงไม่ใช่ความเสี่ยงด้านความปลอดภัยในตัวเอง?
ตามที่ฉันเข้าใจโดยทั่วไปถือว่าปลอดภัยที่จะให้ทุกคนให้ข้อมูลที่จะถูกเก็บไว้ในตัวแปรด้านสิ่งแวดล้อม ช่องโหว่ shellshock เป็นปัญหาที่นี่เพราะมันหมายความว่าโค้ดท้ายคำนิยามฟังก์ชั่นภายในตัวแปรสภาพแวดล้อมจะถูกดำเนินการเมื่ออินสแตนซ์ใหม่ของ bash เปิดตัวและคุณไม่ต้องการให้ใครเรียกใช้รหัสใด ๆ บนเซิร์ฟเวอร์ของคุณ . เห็นได้ชัดว่านิยามของฟังก์ชันเองนั้นไม่ใช่ความเสี่ยงด้านความปลอดภัยและได้รับอนุญาตเพราะจะต้องมีการเรียกใช้อย่างชัดเจนเพื่อให้โค้ดทำงาน คำถามของฉันคือทำไมผู้ใช้lsที่ไม่ประสงค์ดีไม่สามารถกำหนดฟังก์ชั่นโดยมีรหัสที่เป็นอันตรายเช่นเดียวกับคำสั่งทั่วไปแล้วหวังว่าสคริปต์ (หรือสิ่งที่กำลังเรียกใช้) จะใช้คำสั่งนี้ในบางจุด? ตัวอย่างของสิ่งที่ฉันมีอยู่ในใจ: $ export ls='() { echo "doing bad things..."; }' $ bash -c ls doing bad things...
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.