ฉันเป็นคนราก ทำความเข้าใจเกี่ยวกับการเลื่อนระดับสิทธิ์ของระบบปฏิบัติการ Linux

ฉันใช้เวลาช่วงไตรมาสแรกของปี 2020 เพื่อเตรียมตัวสอบ OSCP การค้นหาข้อมูลบน Google และความพยายาม "ตาบอด" จำนวนมากทำให้เวลาว่างของฉันหมดไป กลายเป็นเรื่องยากเป็นพิเศษที่จะเข้าใจกลไกในการยกระดับสิทธิ์ หลักสูตร PWK ให้ความสนใจอย่างมากกับหัวข้อนี้ แต่เนื้อหาเกี่ยวกับระเบียบวิธียังไม่เพียงพอเสมอไป มีคู่มือมากมายบนอินเทอร์เน็ตพร้อมคำสั่งที่มีประโยชน์ แต่ฉันไม่ใช่ผู้สนับสนุนการทำตามคำแนะนำอย่างสุ่มสี่สุ่มห้าโดยไม่เข้าใจว่าสิ่งนี้จะนำไปสู่ที่ใด

ฉันอยากจะแบ่งปันสิ่งที่คุณได้เรียนรู้ระหว่างการเตรียมตัวและการสอบให้ผ่าน (รวมถึงการจู่โจม Hack The Box เป็นระยะๆ) ฉันรู้สึกขอบคุณอย่างสุดซึ้งสำหรับข้อมูลทุกส่วนที่ช่วยให้ฉันเดินบนเส้นทางของ Try Harder อย่างมีสติมากขึ้น ถึงเวลาแล้วที่ฉันจะต้องตอบแทนสังคม

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

ฉันเป็นคนราก ทำความเข้าใจเกี่ยวกับการเลื่อนระดับสิทธิ์ของระบบปฏิบัติการ Linux

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

การเพิ่มระดับสิทธิ์ผ่านการกำหนดค่าที่ไม่ปลอดภัย

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

Pseudo shell และการแหกคุก

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

sudo: no tty present and no askpass program specified

หลังจากได้เชลล์แล้ว ฉันแนะนำให้สร้างเทอร์มินัลที่สมบูรณ์ เช่น ด้วย Python

python -c 'import pty;pty.spawn("/bin/bash")'

คุณถามว่า: "ทำไมฉันต้องใช้คำสั่งเป็นพันๆ คำสั่ง ถ้าฉันสามารถใช้คำสั่งเดียวเพื่อถ่ายโอนไฟล์ได้" ความจริงก็คือระบบได้รับการกำหนดค่าต่างกัน ในโฮสต์ถัดไปอาจไม่ได้ติดตั้ง Python แต่ Perl พร้อมใช้งาน ทักษะคือสามารถทำสิ่งที่คุ้นเคยในระบบโดยไม่ต้องใช้เครื่องมือที่คุ้นเคย สามารถดูรายการคุณสมบัติทั้งหมดได้ ที่นี่.

สามารถรับเชลล์สิทธิ์ต่ำได้โดยใช้ ทีม 1 и ทีม 2 (น่าประหลาดใจแม้กระทั่ง GIMP)

ดูประวัติคำสั่ง

Linux รวบรวมประวัติของคำสั่งที่ดำเนินการทั้งหมดไว้ในไฟล์ ~ / .bash_history. หากเซิร์ฟเวอร์มีการใช้งานอยู่และประวัติไม่ได้รับการล้าง มีโอกาสที่ดีที่จะพบข้อมูลรับรองในไฟล์นี้ การล้างประวัติซ้ำซากไม่สะดวก หากผู้ดูแลระบบถูกบังคับให้เลือกคำสั่งระดับสิบผ่าน แน่นอนว่าการเรียกคำสั่งนี้จากประวัติจะสะดวกกว่าการป้อนอีกครั้ง นอกจากนี้หลายคนไม่ทราบเกี่ยวกับ "แฮ็ก" นี้ หากมีเชลล์ทางเลือกเช่น Zsh หรือ Fish ในระบบ พวกมันมีประวัติของตัวเอง หากต้องการแสดงประวัติคำสั่งในเชลล์ใดๆ เพียงพิมพ์ประวัติคำสั่ง

cat ~/.bash_history
cat ~/.mysql_history
cat ~/.nano_history
cat ~/.php_history
cat ~/.atftp_history

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

ค้นหารหัสผ่านในระบบไฟล์และโจมตีระบบที่อยู่ติดกัน

ไฟล์การกำหนดค่าสำหรับบริการต่างๆ อาจอ่านได้โดยผู้ใช้ปัจจุบันของคุณ คุณสามารถค้นหาข้อมูลประจำตัวในข้อความธรรมดา - รหัสผ่านสำหรับการเข้าถึงฐานข้อมูลหรือบริการที่เกี่ยวข้อง รหัสผ่านเดียวกันสามารถใช้ได้ทั้งเพื่อเข้าถึงฐานข้อมูลและเพื่ออนุญาตผู้ใช้รูท (การจัดเจ้าหน้าที่รับรอง)
มันเกิดขึ้นที่ข้อมูลรับรองที่พบเป็นของบริการบนโฮสต์อื่น การพัฒนาการโจมตีโครงสร้างพื้นฐานผ่านโฮสต์ที่ถูกบุกรุกไม่ได้แย่ไปกว่าการแสวงหาประโยชน์จากโฮสต์อื่น นอกจากนี้ยังสามารถค้นหาระบบที่อยู่ติดกันได้โดยค้นหาที่อยู่ IP ในระบบไฟล์

grep -lRi "password" /home /var/www /var/log 2>/dev/null | sort | uniq #Find string password (no cs) in those directories
grep -a -R -o '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}' /var/log/ 2>/dev/null | sort -u | uniq #IPs inside logs

หากโฮสต์ที่ถูกบุกรุกมีเว็บแอปพลิเคชันที่เข้าถึงได้จากอินเทอร์เน็ต จะเป็นการดีกว่าที่จะแยกบันทึกออกจากการค้นหาที่อยู่ IP ที่อยู่ของผู้ใช้ทรัพยากรจากอินเทอร์เน็ตไม่น่าจะมีประโยชน์สำหรับเรา แต่ที่อยู่ของเครือข่ายภายใน (172.16.0.0/12, 192.168.0.0/16, 10.0.0.0/8) และตำแหน่งที่พวกเขาไป ตัดสินโดย บันทึกอาจเป็นที่สนใจ

sudo

คำสั่ง sudo อนุญาตให้ผู้ใช้ดำเนินการคำสั่งในบริบทของรูทด้วยรหัสผ่านของตนเองหรือไม่ใช้เลย การดำเนินการหลายอย่างใน Linux ต้องการสิทธิ์รูท แต่การเรียกใช้ในฐานะรูทถือเป็นการปฏิบัติที่แย่มาก เป็นการดีกว่าที่จะใช้การอนุญาตแบบเลือกเพื่อดำเนินการคำสั่งในบริบทรูท อย่างไรก็ตาม เครื่องมือ Linux จำนวนมาก รวมถึงเครื่องมือมาตรฐานเช่น vi สามารถใช้เพื่อเพิ่มระดับสิทธิ์ด้วยวิธีที่ถูกต้อง เพื่อหาวิธีที่ถูกต้องฉันแนะนำให้ดู ที่นี่.

สิ่งแรกที่ต้องทำหลังจากเข้าถึงระบบคือการรันคำสั่ง sudo -l จะแสดงสิทธิ์ในการใช้คำสั่ง sudo หากได้รับผู้ใช้ที่ไม่มีรหัสผ่าน (เช่น apache หรือ www-data) ไม่น่าจะเป็นไปได้ที่เวกเตอร์การเลื่อนระดับสิทธิ์ sudo เมื่อใช้ sudo ระบบจะถามรหัสผ่าน การใช้คำสั่ง passwd เพื่อตั้งรหัสผ่านจะไม่ทำงาน แต่จะถามรหัสผ่านผู้ใช้ปัจจุบัน แต่ถ้า sudo ยังใช้งานได้ คุณต้องมองหา:

  • ล่ามใด ๆ ทุกคนสามารถวางเชลล์ (PHP, Python, Perl);
  • โปรแกรมแก้ไขข้อความใด ๆ (vim, vi, nano);
  • ผู้ชมใด ๆ (น้อยลง, มากขึ้น);
  • ความเป็นไปได้ในการทำงานกับระบบไฟล์ (cp, mv);
  • เครื่องมือที่มีเอาต์พุตเป็น bash ไม่ว่าจะเป็นแบบโต้ตอบหรือเป็นคำสั่งปฏิบัติการ (awk, find, nmap, tcpdump, man, vi, vim, ansible)

ซูด/สกิด

มีคู่มือมากมายบนอินเทอร์เน็ตที่แนะนำให้สร้างคำสั่ง suid / sgid ทั้งหมด แต่มีบทความหายากที่ให้ข้อมูลเฉพาะเกี่ยวกับสิ่งที่ต้องทำกับโปรแกรมเหล่านี้ สามารถพบตัวเลือกการยกระดับสิทธิ์ที่ไม่คำนึงถึงการใช้ช่องโหว่ได้ ที่นี่. นอกจากนี้ ไฟล์ปฏิบัติการจำนวนหนึ่งมีช่องโหว่เฉพาะสำหรับเวอร์ชันของระบบปฏิบัติการ เช่น.

ในโลกอุดมคติ คุณควรรันแพ็คเกจที่ติดตั้งทั้งหมดผ่าน searchsploit เป็นอย่างน้อย ในทางปฏิบัติควรทำกับโปรแกรมยอดนิยมเช่น sudo นอกจากนี้ยังเป็นตัวเลือกในการใช้และสนับสนุนการพัฒนาเครื่องมืออัตโนมัติที่จะเน้นความน่าสนใจจากมุมมองการยกระดับสิทธิ์ ปฏิบัติการด้วยชุด suid/sgid bits ฉันจะให้รายการเครื่องมือดังกล่าวในส่วนที่เกี่ยวข้องของบทความ

สคริปต์ที่เขียนได้ดำเนินการโดย Cron หรือ Init ในบริบทรูท

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

ls -la /etc/cron.d  # show cron jobs 

คล้ายกันคือกรณีที่มี init ข้อแตกต่างคืองานใน cron จะดำเนินการเป็นระยะและใน init - เมื่อเริ่มต้นระบบ สำหรับการดำเนินการ คุณจะต้องรีบูตระบบ ในขณะที่บริการบางอย่างอาจไม่เพิ่มขึ้น (หากไม่ได้ลงทะเบียนในการโหลดอัตโนมัติ)

ls -la /etc/init.d/  # show init scripts 

คุณยังสามารถค้นหาไฟล์ที่ผู้ใช้คนใดก็ได้เขียนได้

find / -perm -2 -type f 2>/dev/null # find world writable files

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

chmod +w /path 
chmod 777 /path

การเข้าถึงเชลล์สำหรับผู้ใช้รายอื่น

เราดูรายชื่อผู้ใช้ใน /etc/passwd เราให้ความสำคัญกับผู้ที่มีเปลือก คุณสามารถดุร้ายผู้ใช้เหล่านี้ได้ - เป็นไปได้ว่าในที่สุดคุณจะสามารถเพิ่มสิทธิ์ผ่านผู้ใช้ที่เป็นผลลัพธ์ได้

เพื่อปรับปรุงความปลอดภัย ฉันขอแนะนำให้คุณยึดหลักการสิทธิ์น้อยที่สุดเสมอ นอกจากนี้ คุณควรใช้เวลาในการตรวจสอบการกำหนดค่าที่ไม่ปลอดภัยซึ่งอาจยังคงอยู่หลังจากแก้ไขปัญหา ซึ่งเป็น "หน้าที่ทางเทคนิค" ของผู้ดูแลระบบ

รหัสที่เขียนขึ้นเอง

คุณควรตรวจสอบไฟล์ปฏิบัติการในโฮมไดเร็กทอรีของผู้ใช้และเว็บเซิร์ฟเวอร์อย่างใกล้ชิด (/var/www/ เว้นแต่จะระบุไว้เป็นอย่างอื่น) ไฟล์เหล่านี้อาจกลายเป็นวิธีแก้ปัญหาที่ไม่ปลอดภัยอย่างสมบูรณ์และมีไม้ค้ำที่น่าทึ่ง แน่นอน หากคุณมีเฟรมเวิร์กบางอย่างในไดเร็กทอรีเว็บเซิร์ฟเวอร์ของคุณ การค้นหา Zero-day ในเฟรมเวิร์กนั้นเป็นส่วนหนึ่งของการทดสอบเพนเทสต์ก็ไม่สมเหตุสมผล แต่ขอแนะนำให้ค้นหาและศึกษาการแก้ไข ปลั๊กอิน และส่วนประกอบที่กำหนดเอง

เพื่อเพิ่มความปลอดภัย ควรหลีกเลี่ยงการใช้ข้อมูลรับรองในสคริปต์ที่เขียนขึ้นเอง รวมถึงการทำงานที่อาจเป็นอันตราย เช่น การอ่าน /etc/shadow หรือการจัดการ id_rsa ถ้าเป็นไปได้

การยกระดับสิทธิพิเศษผ่านการใช้ประโยชน์จากช่องโหว่

ก่อนที่จะพยายามยกระดับสิทธิพิเศษผ่านการแสวงหาผลประโยชน์ สิ่งสำคัญคือต้องเข้าใจ การถ่ายโอนไฟล์ไปยังโฮสต์เป้าหมาย. นอกเหนือจากเครื่องมือทั่วไปเช่น ssh, ftp, http (wget, curl) แล้วยังมีทั้งหมด "สวนสัตว์" แห่งความเป็นไปได้.

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

การใช้ประโยชน์จากบริการที่ทำงานในบริบทของผู้ใช้รูท

บริการ Linux บางอย่างทำงานเป็นรูทผู้ใช้ที่มีสิทธิ์ สามารถพบได้โดยใช้ ps aux | grep ราก ในกรณีนี้ อาจไม่มีการประกาศบริการบนเว็บและให้บริการภายในเครื่อง หากมีการแสวงประโยชน์สาธารณะก็สามารถใช้ได้อย่างปลอดภัย: บริการขัดข้องในกรณีที่เกิดความล้มเหลวมีความสำคัญน้อยกว่าระบบปฏิบัติการขัดข้อง

ps -aux | grep root # Linux

กรณีที่ประสบความสำเร็จมากที่สุดถือเป็นการดำเนินการของบริการที่ถูกแฮ็กในบริบทของผู้ใช้รูท การใช้งานบริการ SMB จะให้สิทธิพิเศษแก่ SYSTEM ในการเข้าถึงระบบ Windows (เช่น ผ่าน ms17-010) อย่างไรก็ตาม นี่ไม่ใช่สิ่งที่พบได้ทั่วไปบนระบบ Linux ดังนั้นคุณจึงสามารถใช้เวลาในการเพิ่มระดับสิทธิ์ได้มาก

ใช้ประโยชน์จากช่องโหว่เคอร์เนลของ Linux

นี่คือเส้นทางสุดท้ายที่จะเดิน การดำเนินการที่ไม่สำเร็จอาจนำไปสู่ความผิดพลาดของระบบ และในกรณีที่มีการรีบูต บริการบางอย่าง (รวมถึงบริการที่เป็นไปได้ที่จะได้รับเชลล์ดั้งเดิม) อาจไม่เพิ่มขึ้น มันเกิดขึ้นที่ผู้ดูแลระบบลืมใช้คำสั่ง systemctl enable นอกจากนี้ยังจะทำให้เกิดความไม่พอใจอย่างมากกับงานของคุณหากการเอารัดเอาเปรียบไม่ได้รับการตกลง
หากคุณตัดสินใจที่จะใช้แหล่งที่มาจาก profitdb อย่าลืมอ่านความคิดเห็นที่จุดเริ่มต้นของสคริปต์ เหนือสิ่งอื่นใด มันมักจะบอกว่าจะรวบรวมช่องโหว่นี้อย่างไรให้ถูกต้อง หากคุณขี้เกียจเกินไปหรือต้องการ "เมื่อวาน" เนื่องจากกำหนดเวลา คุณสามารถค้นหาที่เก็บที่มีช่องโหว่ที่รวบรวมไว้แล้ว เช่น. อย่างไรก็ตามควรเข้าใจว่าในกรณีนี้คุณจะได้รับหมูในการกระตุ้น ในทางกลับกัน หากโปรแกรมเมอร์เข้าใจถึงไบต์ว่าคอมพิวเตอร์ทำงานอย่างไรและซอฟต์แวร์ที่ใช้นั้นเป็นอย่างไร เขาคงจะไม่ได้เขียนโค้ดสักบรรทัดเลยตลอดชีวิตของเขา

cat /proc/version
uname -a
searchsploit "Linux Kernel" 

Metasploit

ในการจับและจัดการการเชื่อมต่อ ควรใช้โมดูลการหาประโยชน์/หลายตัว/ตัวจัดการจะดีกว่าเสมอ สิ่งสำคัญคือการตั้งค่าเพย์โหลดที่ถูกต้อง ตัวอย่างเช่น generic/shell/reverce_tcp หรือ generic/shell/bind_tcp เชลล์ที่ได้รับใน Metasploit สามารถอัพเกรดเป็น Meterpreter ได้โดยใช้โมดูล post/multi/manage/shell_to_meterpreter ด้วย Meterpreter คุณสามารถทำให้กระบวนการหลังการเอารัดเอาเปรียบเป็นไปโดยอัตโนมัติ ตัวอย่างเช่น โมดูล post/multi/recon/local_exploit_suggester ตรวจสอบแพลตฟอร์ม สถาปัตยกรรม และเอนทิตีที่สามารถใช้ประโยชน์ได้ และแนะนำโมดูล Metasploit สำหรับการยกระดับสิทธิ์ในระบบเป้าหมาย ต้องขอบคุณ Meterpreter บางครั้งการยกระดับสิทธิ์ก็ขึ้นอยู่กับการเรียกใช้โมดูลที่ถูกต้อง แต่การแฮ็กโดยไม่เข้าใจสิ่งที่เกิดขึ้นภายใต้ประทุนนั้นไม่เป็นความจริง (คุณยังต้องเขียนรายงาน)

เครื่องมือ

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

หลินถั่ว

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

ลินอีนัม

เครื่องมือโปรดอันดับสองของฉัน มันยังรวบรวมและจัดระเบียบข้อมูลที่ได้รับอันเป็นผลมาจากการแจงนับในเครื่อง

linux-exploit-suggester (1,2)

การหาประโยชน์นี้จะวิเคราะห์ระบบเพื่อหาสภาวะที่เหมาะสมในการหาประโยชน์ ในความเป็นจริง มันจะทำงานเหมือนกับโมดูล Metasploit local_exploit_suggester แต่จะเสนอลิงก์ไปยังซอร์สโค้ดของการหาประโยชน์จาก db แทนที่จะเป็นโมดูล Metasploit

Linuxprivchecker

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

อีกครั้งฉันจะอธิบายอย่างละเอียด การเพิ่มระดับสิทธิ์ของ Linux ผ่าน suid/sgid.

ที่มา: will.com

เพิ่มความคิดเห็น