Backdoors

Programovacie jazyky, rady, poradňa...
ryderpowered

Backdoors

Príspevok od používateľa ryderpowered »

Zdravím, dá sa nejako vysporiadať s backdoormi a podobnými vecami na webovej stránke?
sharky-no
King
King
Používateľov profilový obrázok
Príspevky: 1681
Registrovaný: 31 okt 2006, 19:53

Re: Backdoors

Príspevok od používateľa sharky-no »

aktualizovat CMSka a pouzivat co najmenej cudzieho kodu.. resp. nakodit si vsetko sam
Mek
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4661
Registrovaný: 23 mar 2005, 23:00
Bydlisko: ZA <-> TN
Kontaktovať používateľa:

Re: Backdoors

Príspevok od používateľa Mek »

Da aj neda. Normalne antivirusy ti aj PHP backdoor skripty zdetekuju ako kazdy iny virus. Daj konkretny priklad, potom budeme moct poradit viac.
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

Ano máte pravdu. Používam cudzí kód, ale mám motiváciu sa učiť z ťažšieho. Jednoduché tutoriály, z ktorých nič nevzníka ma nebavia. Preto mám stiahnutý cudzí kód a učím sa na ňom hneď aj pracu s domenami, hostingom, servermi atď. Neviem či je toto ten správny ako príklad, ale dám vám ho sem:

Existuju tam subory, ktoré su zamaskované asi ako subory aby ukazovali streamerov na twitchi na danej stránke súbor sa volá twitch111.js (inkriminovaný súbor) a existuje v tom isto adresári aj twitch.js (ktorý sa javí ako nevinný.)

V súbore twitch111.js sa nachádza
Spoiler

Kód: Vybrať všetko

var _0x6b7d=["\x77\x6F\x6C\x6B\x6B\x72","","\x68\x74\x6D\x6C","\x2E\x73\x74\x72\x65\x61\x6D\x65\x72\x73","\x6C\x65\x6E\x67\x74\x68","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x61\x70\x69\x2E\x74\x77\x69\x74\x63\x68\x2E\x74\x76\x2F\x6B\x72\x61\x6B\x65\x6E\x2F\x73\x74\x72\x65\x61\x6D\x73\x2F","\x73\x74\x72\x65\x61\x6D","\x73\x68\x6F\x77","\x23\x73\x74\x72\x65\x61\x6D\x6F\x66\x66","\x68\x69\x64\x65","\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x73\x74\x72\x65\x61\x6D\x65\x72\x22\x20\x64\x61\x74\x61\x2D\x76\x69\x65\x77\x65\x72\x73\x3D\x22","\x76\x69\x65\x77\x65\x72\x73","\x22\x3E\x0D\x09\x09\x09\x3C\x69\x6D\x67\x20\x73\x72\x63\x3D\x22","\x6C\x6F\x67\x6F","\x63\x68\x61\x6E\x6E\x65\x6C","\x22\x3E\x0D\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x73\x6E\x61\x6D\x65\x22\x3E\x3C\x61\x20\x68\x72\x65\x66\x3D\x22\x68\x74\x74\x70\x3A\x2F\x2F\x74\x77\x69\x74\x63\x68\x2E\x74\x76\x2F","\x6E\x61\x6D\x65","\x22\x20\x74\x61\x72\x67\x65\x74\x3D\x22\x5F\x62\x6C\x61\x6E\x6B\x22\x3E","\x3C\x2F\x61\x3E\x3C\x2F\x64\x69\x76\x3E\x0D\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x76\x69\x65\x77\x65\x72\x73\x22\x3E\x3C\x69\x20\x63\x6C\x61\x73\x73\x3D\x22\x66\x61\x20\x66\x61\x2D\x63\x69\x72\x63\x6C\x65\x2D\x6F\x20\x6F\x6E\x6C\x69\x6E\x65\x22\x3E\x3C\x2F\x69\x3E\x20\x3C\x62\x3E","\x3C\x2F\x62\x3E\x20\u0437\u0440\u0438\u0442\u0435\u043B\u0435\u0439\x2C\x20\u0438\u0433\u0440\u0430\u0435\u0442\x20\u0432\x20\x3C\x62\x3E","\x67\x61\x6D\x65","\x3C\x2F\x62\x3E\x3C\x2F\x64\x69\x76\x3E\x0D\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E","\x61\x70\x70\x65\x6E\x64","\x67\x65\x74","\u0427\u0435\u043A\u0430\u0435\u043C\x20\x74\x77\x69\x74\x63\x68","\x6C\x6F\x67"];var channels=[_0x6b7d[0],_0x6b7d[1]];var channelsOnline=0;var cha=0;timerChannels();function timerChannels(){$(_0x6b7d[3])[_0x6b7d[2]](_0x6b7d[1]);channelsOnline=0;for(var _0x60c5x5=0;_0x60c5x5<channels[_0x6b7d[4]];_0x60c5x5++){$[_0x6b7d[23]](_0x6b7d[5]+channels[_0x60c5x5],function(_0x60c5x6){if(_0x60c5x6[_0x6b7d[6]]==null){$(_0x6b7d[8])[_0x6b7d[7]]()}else {setInterval(function(){$(_0x6b7d[8])[_0x6b7d[9]]()},100);$(_0x6b7d[3])[_0x6b7d[22]](_0x6b7d[10]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[11]]+_0x6b7d[12]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[14]][_0x6b7d[13]]+_0x6b7d[15]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[14]][_0x6b7d[16]]+_0x6b7d[17]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[14]][_0x6b7d[16]]+_0x6b7d[18]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[11]]+_0x6b7d[19]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[20]]+_0x6b7d[21])}});channelsOnline++}}setInterval(function(){console[_0x6b7d[25]](_0x6b7d[24]);timerChannels()},30000)
na jednom fóre mi poradili to aby som to dekódoval a vzniklo toto:
Spoiler

Kód: Vybrať všetko

var _0x6b7d=["wolkkr","","html",".streamers","length","https://api.twitch.tv/kraken/streams/","stream","show","#streamoff","hide","<div class="streamer" data-viewers="","viewers","">
			<img src="","logo","channel","">
			<div class="sname"><a href="http://twitch.tv/","name","" target="_blank">","</a></div>
			<div class="viewers"><i class="fa fa-circle-o online"></i> <b>","</b> ........, ...... . <b>","game","</b></div>
			</div>","append","get","...... twitch","log"];var channels=[_0x6b7d[0],_0x6b7d[1]];var channelsOnline=0;var cha=0;timerChannels();function timerChannels(){$(_0x6b7d[3])[_0x6b7d[2]](_0x6b7d[1]);channelsOnline=0;for(var _0x60c5x5=0;_0x60c5x5<channels[_0x6b7d[4]];_0x60c5x5++){$[_0x6b7d[23]](_0x6b7d[5]+channels[_0x60c5x5],function(_0x60c5x6){if(_0x60c5x6[_0x6b7d[6]]==null){$(_0x6b7d[8])[_0x6b7d[7]]()}else {setInterval(function(){$(_0x6b7d[8])[_0x6b7d[9]]()},100);$(_0x6b7d[3])[_0x6b7d[22]](_0x6b7d[10]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[11]]+_0x6b7d[12]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[14]][_0x6b7d[13]]+_0x6b7d[15]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[14]][_0x6b7d[16]]+_0x6b7d[17]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[14]][_0x6b7d[16]]+_0x6b7d[18]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[11]]+_0x6b7d[19]+_0x60c5x6[_0x6b7d[6]][_0x6b7d[20]]+_0x6b7d[21])}});channelsOnline++}}setInterval(function(){console[_0x6b7d[25]](_0x6b7d[24]);timerChannels()},30000)
Neviem zdá sa vám tam niečo podozrivé? Vraj je to backdoor, ale ja to neviem rozoznávať a v tom je problém. Ak chcete pridám aj ďalší príklad kde je nejaký string či čo.

//autoeditácia príspevku (16 Apr 2017, 21:18)
Ešte jedna vec. Skúšal som tu stranku nechat prejst cez scan acunetixu a nenašiel nič závažné ani len SQL Injection o ktorom mám informaciu že by tam mal byť. V prílohe posielam scan ak sa vam tam zda niečo podozrivé.

//autoeditácia príspevku (16 Apr 2017, 21:27)
Sedím pri tom celé dni krv z očí. Nevládzem. Nikto nepomáha. Asi si to hodím.
Prílohy
scan.pdf
SCAN ACUNETIX
(58.39 KiB) 114 stiahnutí
sharky-no
King
King
Používateľov profilový obrázok
Príspevky: 1681
Registrovaný: 31 okt 2006, 19:53

Re: Backdoors

Príspevok od používateľa sharky-no »

dost zle sa to aj tak cita, ale nepride mi ze by to mal byt nejaky skodlivy kod.. akurat sa nacitavaju data z twitch api a zobrazuju sa na webe... este tam chyba nejaka cast autentifikacie, kedze mne napriklad link https://api.twitch.tv/kraken/streams/wolkkr nefunguje, kedze vyzaduje client id, a tento skript s nim nejako nerata...

a o co ti ide? kde je problem? preco to riesis?

//nudil som sa dost a tak som to rucne rozparsoval, ako som hovoril, vklada to len do webu info o streameroch, cize tato cast kodu nebezpecna nie je, jedine ze by z api dosli nejake skarede url na virusy :lol:

Kód: Vybrať všetko

var channels = ['wolkkr', ''];
var channelsOnline = 0;
timerChannels();
function timerChannels() {
    $('.streamers').html('');
    channelsOnline = 0;
    for (var i = 0; i < channels['length']; i++) {
        $.get('https://api.twitch.tv/kraken/streams/' + channels[i], function (response) {
            if (response['stream'] == null) {
                $('#streamoff').show()
            } else {
                setInterval(function () {
                    $('#streamoff').hide()
                }, 100);
                $('.streamers').append('<div class="streamer" data-viewers="' + response['stream']['viewers'] + '"><img src="'+ response['stream']['channel']['logo'] + '"><div class="sname" ><a href="http://twitch.tv/' + response['stream']['channel']['name'] + '" target="_blank">' + response['stream']['channel']['name'] + '</a></div><div class="viewers"><i class="fa fa-circle-o online"></i><b>' + response['stream']['viewers'] + '</b><b>' + response['stream']['game'] + '</b></div></div>')
            }
        });
        channelsOnline++
    }
}
setInterval(function () {
    console.log('...... twitch');
    timerChannels()
}, 30000)
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

sharky-no napísal:dost zle sa to aj tak cita, ale nepride mi ze by to mal byt nejaky skodlivy kod.. akurat sa nacitavaju data z twitch api a zobrazuju sa na webe... este tam chyba nejaka cast autentifikacie, kedze mne napriklad link https://api.twitch.tv/kraken/streams/wolkkr nefunguje, kedze vyzaduje client id, a tento skript s nim nejako nerata...

a o co ti ide? kde je problem? preco to riesis?

//nudil som sa dost a tak som to rucne rozparsoval, ako som hovoril, vklada to len do webu info o streameroch, cize tato cast kodu nebezpecna nie je, jedine ze by z api dosli nejake skarede url na virusy :lol:

Kód: Vybrať všetko

var channels = ['wolkkr', ''];
var channelsOnline = 0;
timerChannels();
function timerChannels() {
    $('.streamers').html('');
    channelsOnline = 0;
    for (var i = 0; i < channels['length']; i++) {
        $.get('https://api.twitch.tv/kraken/streams/' + channels[i], function (response) {
            if (response['stream'] == null) {
                $('#streamoff').show()
            } else {
                setInterval(function () {
                    $('#streamoff').hide()
                }, 100);
                $('.streamers').append('<div class="streamer" data-viewers="' + response['stream']['viewers'] + '"><img src="'+ response['stream']['channel']['logo'] + '"><div class="sname" ><a href="http://twitch.tv/' + response['stream']['channel']['name'] + '" target="_blank">' + response['stream']['channel']['name'] + '</a></div><div class="viewers"><i class="fa fa-circle-o online"></i><b>' + response['stream']['viewers'] + '</b><b>' + response['stream']['game'] + '</b></div></div>')
            }
        });
        channelsOnline++
    }
}
setInterval(function () {
    console.log('...... twitch');
    timerChannels()
}, 30000)
Od ľudí som sa dozvedel, že je možné, že sú tam backdoory, pretože majitel mal z toho veľký biznis. Jedná sa totižto v podstate o hru na webe. Ja čo som si čítal na internete o sql injection / backdooroch tak vraj stačí, keď do kolonky, kde má človek napísať nejakú hodnotu napríklad virtualnu menu pripíše časť kódu ktorou ten pôvodný kód využije k svojmu prospechu. Napríklad jeden chalan hovorí o tom ako mu v podobnom scripte človek robil toto: bets 1e+1 over socketio over the console i think and the script thinks that its a bet of 101010 i need help. but he only pays 30 coins.

Písal to čech, ale na anglické fórum.
O takéto veci sa mi jedná. Proti tomuto by som chcel bojovať.
Michaelo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6177
Registrovaný: 16 júl 2008, 20:29
Bydlisko: Pri PC
Kontaktovať používateľa:

Re: Backdoors

Príspevok od používateľa Michaelo »

Tak bud pouzivaj len svoj kod, alebo budes musiet precitat kazdy znak cudzieho kodu a prepisat veci ktore sa ti nepozdavaju...
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

Michaelo napísal:Tak bud pouzivaj len svoj kod, alebo budes musiet precitat kazdy znak cudzieho kodu a prepisat veci ktore sa ti nepozdavaju...
No ale tým sa nezbavím toho, že keď niekto použije ten môj kód ako nemá tak si nelegálne dopomôže.
Michaelo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6177
Registrovaný: 16 júl 2008, 20:29
Bydlisko: Pri PC
Kontaktovať používateľa:

Re: Backdoors

Príspevok od používateľa Michaelo »

Ako tak ako nema? Je to kod ktory bude na tvojom webe alebo to chces davat na stiahnutie?
Ak len u teba, tak pokial to napises normalne, tak to nema kto vyuzit "tak ako nema" a nelegalne si dopomoct...
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

Nechcem to dávať na stiahnutie ale chcem aby ten web ludia používali. Preto sa takýchto vecí potrebujem zbaviť a poradiť ako na to :))
94jakub
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2037
Registrovaný: 15 dec 2006, 13:18
Bydlisko: Martin/BA
Kontaktovať používateľa:

Re: Backdoors

Príspevok od používateľa 94jakub »

Do bezpečnosti investujú takmer všetci nemalé peniaze. Ak to budeš riešiť sám, tak tam spravíš viac bezpečnostných chýb ako v existujúcich riešeniach.
Pre nejaký menší projekt bude lepšie použiť nejaký overený, open-source framework/CMS s veľkou komunitou, kde sa na chyby príde čo najskôr.
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

Nie som milionár, ale niečo by som mohol zaplatiť ak by sa niekto na to pozrel a pomohol mi s tým.
ropman
Medium Professional
Medium Professional
Príspevky: 1250
Registrovaný: 12 apr 2010, 21:07

Re: Backdoors

Príspevok od používateľa ropman »

do open source projektu asi autori nebudu umyselne davat backdoory, lebo by sa na to prislo velmi rychlo. ak sa ale take nieco predsa len preukazatelne stalo, tak urcite by som to nepouzival...

security issues a bugy su ina vec. ak je tam vela zleho kodu, tak to uz bude mozno jednoduchsie urobit cele na novo...
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

Nakodovat to celé sám nemám šancu :-(
Mek
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4661
Registrovaný: 23 mar 2005, 23:00
Bydlisko: ZA <-> TN
Kontaktovať používateľa:

Re: Backdoors

Príspevok od používateľa Mek »

Tak pouzi nieco co je od zaciatku open source, taky kod zvykne prechadzat cez code review a ak sa viaceri nedohodnu, backdoor tam nikto neprepasuje.
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

Najlepšie by bolo keby som mal live odozvu od niekoho kto sa vyzná. Je niekto ochotný ísť trebars na skype, kde by som sa mohol sem tam niečo spýtať?
94jakub
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2037
Registrovaný: 15 dec 2006, 13:18
Bydlisko: Martin/BA
Kontaktovať používateľa:

Re: Backdoors

Príspevok od používateľa 94jakub »

Čo je to vlastne za projekt, keď tak riešiš zabezpečenie?
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

94jakub napísal:Čo je to vlastne za projekt, keď tak riešiš zabezpečenie?
To samozrejme môžem vysvetliť na skype ak by si bol taký dobrý ? :)
skjerp-deg
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 383
Registrovaný: 24 aug 2015, 15:17

Re: Backdoors

Príspevok od používateľa skjerp-deg »

ako fakt neviem na čo chceš skypovať. Používať open-source riešenia je vo všeobecnosti bezpečenejšie než closed-source. Ak si si stále nie istý, tak si prejdi ich kód na githube alebo kde to už hostujú. Prípadne rovno tu napíš čo sa chystáš použiť, pravdepodobne každý čo sa dotkol web programovania ti bude môcť odpovedať na tvoje otázky ohľadom WP, Joomla, Drupalu, Prestashopu, Opencartu a podobne.
ryderpowered

Re: Backdoors

Príspevok od používateľa ryderpowered »

skjerp-deg napísal:ako fakt neviem na čo chceš skypovať. Používať open-source riešenia je vo všeobecnosti bezpečenejšie než closed-source. Ak si si stále nie istý, tak si prejdi ich kód na githube alebo kde to už hostujú. Prípadne rovno tu napíš čo sa chystáš použiť, pravdepodobne každý čo sa dotkol web programovania ti bude môcť odpovedať na tvoje otázky ohľadom WP, Joomla, Drupalu, Prestashopu, Opencartu a podobne.
Ja skôr neviem ako to môže niekto nechápať. Chcem skypovať pretože na skype nemusím čakať na odpoveď niekoľko hodín, čož znamená, že niekolko hodín stojím a nič nemôžem spraviť. Radíte mi tu rôzne nové veci, ktoré ani neviem čo sú, ani neviem ako ich použiť v konkretnom zmysle..

Snažím sa vytvoriť jednoduché online kasíno s hrami ako ruleta + jednoduchý coinflip hlava, orol.
Napísať odpoveď