milläs prosessilla saisi muutettua .exe-tiedoston binääridatan vaikka unicodeksi ja sitten takaisin binääriksi?
Webbisivulle oleva ActiveX-kikkare kirjoittaa sille annetun merkkijonon tiedotoksi levylle.
Pitäis nyt saada exe-filun data javascriptin sisään merkkijonoksi ja sitten unescape() avulla antaa se tolle ActiveX-komponentille, joka kirjoittais sen takas suoritettavaksi exeksi levylle.
En tiedä missä vaiheessa tällä hetkellä fiba tapahtuu, mutta jotkut merkit korvautuvat 3F-hexakodilla.
Webbisivulle oleva ActiveX-kikkare kirjoittaa sille annetun merkkijonon tiedotoksi levylle.
Pitäis nyt saada exe-filun data javascriptin sisään merkkijonoksi ja sitten unescape() avulla antaa se tolle ActiveX-komponentille, joka kirjoittais sen takas suoritettavaksi exeksi levylle.
En tiedä missä vaiheessa tällä hetkellä fiba tapahtuu, mutta jotkut merkit korvautuvat 3F-hexakodilla.
Vastaukset 8
Vanhimmat
mun korvin kuultuna tossa prosessissa ei ole mitään järkeä. Jo se, että binääritiedostoa muutetaan merkkijonoksi ja takaisin kuulostaa _hyvin huonolta idealta_, jossa aivan varmasti menee jotain pieleen. Suosittelen miettimään tarkkaan olisiko jokin muu tapa järkevämpi. Jos esim. tarkoituksena on vain uploadata binääritiedostoja web-palvelimelle, niin ihan normaali HTTP File Upload varmaan riittäisi.
aina kun ei ole mahdollista tehdä asioita kun tietyllä tavalla.
Tarkoitus on siis kirjoittaa binääritiedostoja webbisivulta henkilön X koneelle.
Löytyi jo tarvittava softa ja jos kiinnostaa, niin EICAR on .com executable joka menee ihan ASCII tekstinä ja sitä voi käyttää tarkistamaan toimiiko oma virustorjunta.
Kun tarkemmin ajattelee, niin eihän tuo tarvitse kun loaderin, joka menee ASCII tekstinä. Pitää tehdä vaan työkalu joka koodaa varsinaisen payloadin loaderin ymmärtämään muotoon.
Sitten vielä tietty tapa millä sen tiedoston saa webbisivulta stringistä koneelle tiedostoksi.
BTW, Base64-enkoodaus on yleinen tapa, jolla binääritietoa saadaan siirrettyä character datana esim. juuri HTTP:n yli. Googleta base64, sille löytynee kirjastot suunnilleen kaikille yleisille ohjelmointikielille. Ja jos ei löyty, se on helppo toteuttaa itse.
on käyty läpi jo.
Ongelma on siinä, että data käy välillä String-tyyppisessä muuttujassa ja riippuen datasta se voi muuttua.
Metasploit-ohjelmistosta löytyi työkalu jolla voi koodata minkä tahansa executablen loaderiksi+payloadiksi ja määritellä sallitut merkit.
Näin voidaan välttää ne merkit jotka sotkis tuon muunnoksen takas binääriksi.
Tässä on se EICAR virus test file merkkijonona. Ton kun tallettaa vaikka test.com ja ajaa sen, niin pitis tulostua ruudulle EICAR...
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
Virusohjelmien pitäis alkaa huutaan siitä
Base64-koodattu data ON merkkijono, se EI muutu mihinkään, vaikka se kävisi kuinka monessa String-tyyppisessä muuttujassa. Eli ihan ekaksi, ennenkuin teet mitään, muutat binääridatan base64-koodatuksi merkkijonoksi, siirtelet sitä sitten minne haluat ja ihan lopuksi muutat se takaisin binääridataksi.
Miksi ei voi kääntää binaaria heksaksi, ei luulisi paljon haittaavan, vai olenko väärässä ja perustelut mikäli olen, kiitos!
nii
Parhaat naurut pitkästä aikaa :D