Post

Checkpoint Global CyberSecurity გამოწვევა?!

Checkpoint Global CyberSecurity გამოწვევა?!

დასაწყისი

მოკლედ, BTU-ს სტუდენტი ვარ და, რა თქმა უნდა, მისი გვერდი გამოწერილი მაქვს Facebook-ზე. რამდენიმე დღის წინ მათი პოსტი შემხვდა, სადაც ამბობდნენ, რომ Checkpoint-ის წარმომადგენლობასთან კოლაბორაციით ხდება გლობალური კიბერუსაფრთხოების ჰაკათონი და შემეძლო მონაწილეობის მიღება, რადგან ხელშეკრულების თანახმად, მხოლოდ ის ადამიანები დაიშვებიან ჰაკათონზე, რომლებიც სწავლობენ Checkpoint-თან შეთანხმებულ უნივერსიტეტებში.

ვიფიქრე, რატომაც არა, მივიღებ მონაწილეობას და გავიმარჯვებ-მეთქი. ასეც მოხდა.

რა ხდებოდა

თავდაპირველად Zoom-ში შევიკრიბეთ და პროექტის Head-მა განმარტა თუ რა და როგორ უნდა მომხდარიყო. Checkpoint-ს ჰქონია სპეციალური პლატფორმა, სადაც შიდა ქსელში სიმულაციებს აწყობენ, რათა ჰაკერებმა სამიზნეებში შეაღწიონ.

ის მეუცნაურა, რომ Checkpoint არ გვაძლევდა .ovpn ფაილებს, რათა ამ ქსელში შევსულიყავით. მათ მხოლოდ Kali-ს VNC მოგვცეს, რომელიც ონლაინ იყო დაჰოსტილი და შიდა ქსელზე ჰქონდა წვდომა.

გამოწვევას ერქვა: Obsidian Vault Remastered.

შიდა ქსელი

მოცემული იყო ორი შიდა ქსელი:

  1. 172.16.16.0/24
  2. 192.168.200.0/24

პირველი დავალების თანახმად, საჭირო იყო ამ ქსელებში ჰოსტების აღმოჩენა და აქ ყველაზე საინტერესო იყო საჭირო ჰოსტის პოვნა. საინტერესო ისაა, რომ 172.16.16.0/24 ქსელი საერთოდ ცარიელი იყო და ყველა ჰოსტი 192.168.200.0/24 ქსელში იყო განთავსებული, ასე, რომ ზოგმა მეორე ქსელში ქექვაში დრო ტყუილად დახარჯა და ჩამორჩა.

აღმოჩენა

სამიზნე ჰოსტი ვიპოვე: 192.168.200.5. ეს ჰოსტი ამ ბრძანების გაშვების შედეგად აღმოვაჩინე:

1
nmap -sn 192.168.200.0/24 -T5

შედარებით პასიური/აბსოლუტურად პასიური სკანირებებისგან თავი შევიკავე, რადგან დრო 01:30:00 საათი იყო და ამ ყველაფრის დრო არ იყო. MiTM-იც არ მიცდია, რადგან გამოწვევის მიხედვით ქსელში SOC გუნდი არ მუშაობდა და აღმოჩენის საფრთხე არ არსებობდა.

1
2
3
ვფიქრობ გამოწვევა ბევრად საინტერესო იქნებოდა ჩამტარებლებს აღმოჩენის რისკიც რომ დაემატებინათ, მაგრამ
არაუშავს. ვფიქრობ, კარგი იქნებოდა ქსელში Firewall-ების ან SecurityOnion-ის დაყენება. გამოწვევას
ბევრად გაართულებდა და უფრო საინტერესო იქნებოდა ყველაფერი.

აღმოვაჩინე რამდენიმე ჰოსტი, ზოგის IPv4 მისამართიც არ მახსოვს. კონკრეტულად ამ მისამართის სკანირებამ მომცა რამდენიმე საინტერესო პორტზე ინფორმაცია:

  1. HTTP 80/TCP
  2. HTTP 5000/TCP
  3. HTTP 9001/TCP

მოკლედ რომ ვთქვა, Nginx 1.14.0 ვერსია იყო გამოყენებული ვებსერვერად და ორი CMS იყო გაშვებული:

  1. WordPress
  2. Drupal

ინფორმაციის მოძიება

wpscan გამოვიყენე, რათა დეტალური ინფორმაცია მომეძიებინა სამიზნეზე. როგორც აღმოჩნდა, twentytwentyone თემა იყო გამოყენებული და აგრესიული სკანირების შედეგად(რომელზეც 400 წრედის გაშვება დამჭირდა, რადგან ისე საათი და 30 წუთი სჭირდებოდა) აღმოვაჩინე, რომ Akismet ფლაგინს იყენებდა საიტი. როგორც შევატყე, გამოწვევა უფრო სწრაფ ენუმერაციაზე ახდენდა კონცენტრაციას და, სამწუხაროდ, ექსპლუატაცია დიდად არ დამჭირვებია. უფრო მეტად ყურადღება საჭირო CVE-ების აღმოჩენასა და მის დაბლოკვაზე იყო გამახვილებული. SSH ვერსია საინტერესო პაჩი იყო, რადგან მის წინა ვერსიას 3-4 RCE(Remote Code Execution მოწყვლადობა ჰქონდა და ამ ვერსიით ეს ყველაფერი სწორდებოდა.

SSH სერვისის ვერსია იყო: 7.6p1-4ubuntu0.3 და ამის მიხედვით მოვიძიე წინა CVE-ები ოფიციალური Changelog-დან.

Drupal-ის ვერსია 7.54 იყო, ხოლო WordPress-ის ვერსია 5.7.2 და სწორედ ამ ინფორმაციიდან გამომდინარე მოვნახე საჭირო CVE-ები პასუხებისათვის.

დაჰოსტილ Kali-ზე გაუნახლებელი სისტემა იყო, ასე, რომ მომიწია მისი განახლება და იმ პროგრამებისა თუ ხელსაწყოების გადმოწერა, რომლებიც მჭირდებოდა, მაგრამ Kali-ს არ გააჩნდა:

1
2
3
4
sudo apt update -y && sudo apt upgrade -y
sudo apt install wpscan git -y
cd Desktop/
git clone https://github.com/tibillys/drupscan

ერთადერთი პრობლემა, რაც დავინახე იყო ის, რომ სისტემაზე ჯერ კიდევ იყო Python2 პაკეტი, რომელიც წლებია მივიწყებულია. ეს პაკეტი drupscan-ს დასჭირდა და ალბათ მაგ მიზეზით დააყენეს ის სისტემაზე. არც კი ვიცი რომელი რეპოზიტორიიდან წამოიღეს Python2 პაკეტი, რადგან როდესაც მის ინსტალაციას ვცდილობ, პაკეტების მენეჯერები(apt, pacman, xbps-install, dnf, pkg, pacstrap) ვერ პოულობენ მას.

ყველაზე საინტერესო ალბათ ამ ორ ბრძანებას შორის განსხვავებაა:

1
2
3
wpscan --url http://192.168.200.5:5000 --enumerate -p --plugins-detection aggressive
wpscan --url http://192.168.200.5:5000 --enumerate -p --plugins-detection aggressive -t 200
wpscan --url http://192.168.200.5:5000 --enumerate -ap --plugins-detection aggressive -t 400

სწორედ -t დროშით, რომელიც წრედების რიცხვს უთითებს, შევამცირე დრო ორი საათიდან ორ წუთამდე.

საბოლოო ჯამში, კი ავიღე მაქსიმალური, 2450 ქულა და გავედი #1 ადგილზე, რადგან ყველაზე მალე მოვრჩი. 40-50 წუთი დამჭირდა დაახლოებით ამ ყველაფრის გასაკეთებლად. რა თქმა უნდა, სიღრმისეულ დეტალებს ვერ გადმოვცემ აქ, რადგან ბევრი რამ დამავიწყდა, მაგრამ ამ ყველაფერმა იმ სირთულეებთან ერთად და VNC ჰოსტის ჭედვასთან ერთად(Kali ჰოსტი ჭედავდა) 40-50 წუთი წაიღო.

1.png

შეფასება

ვფიქრობ საკმაოდ საინტერესო გამოწვევა იყო და ყველა ადამიანმა უნდა სცადოს ასეთ გამოწვევებში მონაწილეობის მიღება, მნიშვნელობა არ აქვს ადამიანი პროფესიონალია თუ დამწყები, რადგან ასეთი ევენთებიდან ბევრი რამის სწავლა შეიძლება. სამწუხაროდ, ამ გამოწვევას ახალი ცოდნა არ მოუცია ჩემთვის, რადგან მე უკვე გამოცდილი ვარ, მაგრამ ვფიქრობ გარკვეულ ნაწილს ეს გამოწვევა ძალიან წაადგენა განვითარებისა და წინსვლისთვის.

This post is licensed under CC BY 4.0 by the author.