T-shirt apdruka,un mazo uzlīmju taisīšana. 4
Profesionālie tulkošanas pakalpojumi. 5
Pardod: MSI GeForce RTX 2080ti gaming X TRIO Graphic Card 1
Vēlos piedāvāt darbu online. 0
OCTA termiņš 13
Ka sauc Pasaules dalu kura dzivojam 4
google 1
Taustiņu funkcijas izmainīšana 2
Torrent 1
ESET izlaiž 2017.gada produktu izdevumus 23
VIAPLAY: Video tiešsaistē skatās 70% Latvijas iedzīvotāju 21
Katrā desmitajā datorā joprojām izmanto Windows XP 2
Google tuvākajā laikā atteiksies no Chrome paplašinājuma palaidēja 2
Acer ievieš nozares pirmo ieliekto monitoru ar acu izsekošanas funkcionalitāti 4
Adobe laiž klajā ārkārtas atjauninājumu 3
Tests: Cik precīzs ir "lēta gala" velo spidometrs? 3
Leģendārie telefoni – Nokia 3310 un citi 3
Puisis iziet Super Mario spēli mazāk kā piecu minūšu laikā un labo pasaules rekordu 2
Līdz 29.jūlijam atjaunini savu Windows bez maksas! 3
Kā uzlabot televizora skaņu? 2
Programma, ar kuras palīdzību fotogrāfijas pārveidot .gif formātā 1
Aproce, kas sastāv no 25 instrumentiem 1
Trīs padomi televizora izvēlei 2
Windows 7 ēra tuvojas noslēgumam, Microsoft koncentrējas uz Windows 10 1
Lietotāji online: 129
Reģistrētie lietotāji online: 0
Viesi online: 129
Man vajadzēja web lapas izstrādē pievienot iespēju veikt pieprasījumus uz citu serveri un saņemt atbildi. Pieprasījums tika veikts uz man nepiederošu serveri.
Vienreiz iekopējot šādu linku pārlūkprogramma, es saņēmu korektu atbildi
http://www.******.lv/parskats.php?from_day='.date('Y-n-j').'&to_day='.date('Y-n-j').'&*****
Funkcija date('Y-n-j') php kodā izpildījās uz mana servera un tad tika veikts pieprasījums uz serveri ar šodienas datumu. Iekopējot šādu kodu pārlūkprogrammā, arī saņemu pārskatu par šodienu.
Vai šīs funkcijas izpildīšanās norāda uz mysql caurumu, vai tai vajadzētu izpildīties jebkurā gadījumā?
Es domāju sekojoši:
šis mainīgais to_day='.date('Y-n-j').' tika padots no php, kur '.date('Y-n-j').' pārvērtās par konkrētu datumu, piemēram, 2010-6-30, iekopējot linku pārlūkprogrammā ar funkciju date, precīzi kā rakstīts komentārā &to_day='.date('Y-n-j').'&, tik un tā datubāze, kurai tika padots get mainīgais '.date('Y-n-j').', atgrieza rezultātu ar šodienas datumu.
Vai drošā datu bāzes vaicājumā, ko veic caur php, funkcijai date būtu jāatgriež datums?
Ja mainīgai tiek padots caur url, kāpēc lai atgrieztu visu ko prasu?
Vai tu zini, ko nozīmē sql injection? Tik pat labi es varu izdzēst datu bāzi vai novilkt visas tās saturu.
iekopējot linku pārlūkprogrammā ar funkciju date
Es vsp nesaprotu, kāpēc kopēt pārlūkprogrammā funkciju date().
Ja mainīgai tiek padots caur url, kāpēc lai atgrieztu visu ko prasu?
Un kāpēc ne, ja kods to izpilda?
Tik pat labi es varu izdzēst datu bāzi vai novilkt visas tās saturu.
Vari. Es es to neapšaubu.:) Līdzīgi mūsu varonis Neo aizņēmās VID datubāzi.
Mans pieņēmums ir, ka tajā lapelē iekļautais php kods ir tik līks, ka saņemot from_day vietā gļukus, tas izvelk kko no sesijas vai vnk uzmet null, vai nil, vai vvz kaut ko, kas jums tur php ir, tādējādi izraisot tevis aprakstiito situāciju.
Pamēģini tajā urlī nomainīt`.date(` ar `.lohavoz(` un paskaties, kas notiek.
Vēl jau ir variants, ka urlī ietverto argumentu vērtības tiek interpretētas ar php, bet nu par šo es smagi šaubos, jo tad kodam jābūt tik līkam kā priedei getliņos un vairāk. Tur pat būtu īpaši jāpiepūlas, lai kko tādu panāktu. Bet, ja tas tā ir (0.1% possibilty IMHO), tad tas ir smags robs.
Pamēģināju izdzēst vispār tos mainīgos, tik un tā izmeta šodienas datus. Varbūt tomēr nav caurums un pie nekorekti padotām vērtībā tiek atgrieztas šodienas atskaites.
http://datuve.lv/raksts/3557/Interneta_pardos_skanas_pavadijumus_YouTu…
Pamaini dotajā linkā ciparu 7 ar 6 u.t.t. Kopē rakstu datubāzi cik vien uziet! Vai tāda bija tava iniciālā iedomātā sāpe? Ja, tā. Es jau atbildēju #1 trešajā rindkopā.
Piem., ja šie raksti būtu slēpjami, tad phpsql vaicājumu vajadzētu veikt no atsevišķas lapas, kurai pieeja ir tikai atsevišķiem lietotājiem.
Bet kā izrādās, zāles bija: "Pamēģini tajā urlī nomainīt`.date(` ar `.lohavoz(` un paskaties, kas notiek." Paldies ķirurgam.
Runa negāja par id maiņu, kas protams ir saprotami līdz robežai, kā izņēmumu var minēt, piemēram, neo tikšana klāt dokumentiem, kur vienkārši netika veikta pārbaude vai vajadzētu rādīt.
Runa ir par to, ka tik padota php (varbūt ir tāda arī mysql) funkcija date un no sākuma šķita, ka tā tika izpildīta, lai gan pēc manām domām caur GET padotam mainīgam uz PHP vajadzētu izpausties kā vienkārši string, nevis funkcijai, kura izpildās.
Tā kā patiesībā runa šeit iet par Latvijas Bankas mājas lapu, negribējās kaut ko uz bobi mainīt, ka nav ar kādu bargu vīru jāskaidrojas
Ja tajā failā /parskats.php ir normāla saņemto datu pārbaude un ievietošana query, nekas tur nevar notikt ar bāzi, ijicē vinalg ko, nenojās.
Nu tas, ka ir jāprot datus validēt, tas jau ir cits jautājums.
Bet to jādara tanī failā, kurš saņem requestu vai jebkurā gadijumā pirms izpilda sql vaicājumu.
. date() . izpilda funkciju outputā
Mainīgā piemērs, kurš padod stringu date() (nevis datuma stringu, bet stringu date()): $date_kaa_strings="date()"; par izbēgšanu no iekavam neesmu informēts. Neviens mainīgos nedefinē kaut kādā outputā, bet gan sākumā.
Kur problēma, date() vietā padod die() un sapratīsi, ka nekas tur neizpildās. Visdrīzāk kā jau minēja pie nepareiziem datumiem, tiek uzsetots kāds defaultais, piemēram, šodienas.
Pat ja tā cita datubāze ir zem cita domena, jebkurā gadījumā lokālā datubāze (zem tava domena) arī ir cits serveris teorētiski.
Vai tu jautā, vai pamainot mainīgā vertību, ja tas ir kaut kāds nosacīts id, vai saturam būtu jāizpildās pēc noteiktā algoritma? Jā, kāpēc gan ne?
Citu, nesankcionētu serveru piekļūšana, kuriem nav izsniegtas paroles piekļūšanai datubāzei, ja tie reāli piekļūst, tas jau ir drošības jautājums. Bet ja runa iet lokāli (viena lapa, vairāki lietotāji), ja tā ir slēpjama informācija, tad jāveido pieeja no alternatīva koda (lapas), liedzot pieeju pārējiem. Ja informācija ir vēl svarīgaka, tad minētais + šifrēšana no serveru puses.