Autorius Tema: include arba require apsauga, naudojant kitame tinklapyje  (Skaityta 404 kartus)

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
include arba require apsauga, naudojant kitame tinklapyje
« Įrašytas: 2012-07-28 23:08:00 pm »
Iškilo toks klausimas, noriu padaryti taip, kad jeigu gauti duomenys atitinka mano reikalavimus pridedu su INCLUDE failą, esantį kitame serveryje ( jame kiti asmenys gali redaguoti skriptą ), tad negaliu palikti neapsaugojęs priėjimo prie MANO duombazės.
Taigi gal yra koks būdas panaudojus iki tam tikro taško duombazės prisijungimą , visą info ištrinti? kaip kad session_destroy būna ir pnš.

Parodysiu kodą, kad aiškiau būtų:
<?php
$kaina
=$_GET['wp_amount'];
require_once(
'WebToPay.php');
include 
"../../database.php";

list(
$pirmas$USER_ID$tekstas) = explode(" "$_GET['wp_sms']);
$query mysql_query("SELECT id FROM user WHERE id='".(int)$USER_ID."'");

if(
mysql_num_rows($query) > 0) {
$qu=mysql_query("SELET * FROM raktaz WHERE vid=$USER_ID AND raktazodis=$tekstas ");
mysql_query("UPDATE user SET balansas=balansas+".(($kaina/10000)*40)." WHERE id='".(int)$USER_ID."'");

if(mysql_num_rows($qu) == 0) {
//Tokio serverio neturim su situo  raktazodziu 
echo "OK Neteisingas serverio raktažodis";
} else {
// toki serva turim, zinom raktazodi, kaina ir .t.t kreipiames i sistemos php faila

$url=$qu['url'];
// tas url tai mazdaug http://kazkieno-cs-serveris.lt/sms.php
include $url;

}

Tai va pabaigoje įterpiu sms.php failą, kuris turėtų gauti tik kintamąjį $tekstas . O  beveik visą likusią info reiktų paslėpti.

Kaip tai padaryti?

Prisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7385
  • Karma: +226/-15
    • Žiūrėti profilį
    • mano CV
Ats: include arba require apsauga, naudojant kitame tinklapyje
« Atsakymas #1 Įrašytas: 2012-08-03 07:30:16 am »
man tai panasu i nesamone, kodel tu isvis includini ta faila? Tau apie duombaze maziausiai bedu gali kilti.. Tau i ta faila bet koki skripta gali parasyti, pvz nuskanuoti visus tavo failus/folderius ir istrinti viska tavo serve. Is viso veikia tau toks include'as? Turetu buti apsaugos uzdetos, kad neleistu php vykdyti is kito servo. Ka tu cia bandai padaryti? API? Tai jis daromas kitaip.. :/
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: include arba require apsauga, naudojant kitame tinklapyje
« Atsakymas #2 Įrašytas: 2012-08-06 13:20:44 pm »
man tai panasu i nesamone, kodel tu isvis includini ta faila? Tau apie duombaze maziausiai bedu gali kilti.. Tau i ta faila bet koki skripta gali parasyti, pvz nuskanuoti visus tavo failus/folderius ir istrinti viska tavo serve. Is viso veikia tau toks include'as? Turetu buti apsaugos uzdetos, kad neleistu php vykdyti is kito servo. Ka tu cia bandai padaryti? API? Tai jis daromas kitaip.. :/

Veikti tai veikia toks tik php.ini faile pakeitus nustatymus ir leidus includinti failus iš kito tinklapio.

Šitą naudojau su tikslu, kad kitoje vietoje esantis failas atspauzdintų pagal situacija tam tikrą tekstą, kurį priimtų mokejimai.lt sistema. Nes ta sistema priima tik viena URL, tad pirma pas mane viską reikia apdoroti, o tada pabaigti pas kitą žmogų.

Tai temą ir sukūriau dėl to, nes čia akivaizdi saugumo spraga gaunasi, nes includintas failas gali betką padaryti su manuo duombaze. Už tai ir klausiau, ar eina viduryje skripto kaip nors atsijungti nuo duombazės, kad poto nebebūtų galima prie jos prisijungti ir daryti užklausas tame pačiame faile.

Kažkokią panašią funkciją buvau netyčia užmatęs, bet nelabai supratau veikimo tada ir neįsidemėja.
Betkuriuo atveju šitą padariau su FOPEN funkcija ir čia jau nebegali prisijungti prie duombazės manosios.

Prisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7385
  • Karma: +226/-15
    • Žiūrėti profilį
    • mano CV
Ats: include arba require apsauga, naudojant kitame tinklapyje
« Atsakymas #3 Įrašytas: 2012-08-06 13:23:46 pm »
man tai panasu i nesamone, kodel tu isvis includini ta faila? Tau apie duombaze maziausiai bedu gali kilti.. Tau i ta faila bet koki skripta gali parasyti, pvz nuskanuoti visus tavo failus/folderius ir istrinti viska tavo serve. Is viso veikia tau toks include'as? Turetu buti apsaugos uzdetos, kad neleistu php vykdyti is kito servo. Ka tu cia bandai padaryti? API? Tai jis daromas kitaip.. :/

Veikti tai veikia toks tik php.ini faile pakeitus nustatymus ir leidus includinti failus iš kito tinklapio.

Šitą naudojau su tikslu, kad kitoje vietoje esantis failas atspauzdintų pagal situacija tam tikrą tekstą, kurį priimtų mokejimai.lt sistema. Nes ta sistema priima tik viena URL, tad pirma pas mane viską reikia apdoroti, o tada pabaigti pas kitą žmogų.

Tai temą ir sukūriau dėl to, nes čia akivaizdi saugumo spraga gaunasi, nes includintas failas gali betką padaryti su manuo duombaze. Už tai ir klausiau, ar eina viduryje skripto kaip nors atsijungti nuo duombazės, kad poto nebebūtų galima prie jos prisijungti ir daryti užklausas tame pačiame faile.

Kažkokią panašią funkciją buvau netyčia užmatęs, bet nelabai supratau veikimo tada ir neįsidemėja.
Betkuriuo atveju šitą padariau su FOPEN funkcija ir čia jau nebegali prisijungti prie duombazės manosios.
tu ne tik su duombaze turi beda, bet ir su visais savo failais. Cia tikrai yra blogas budas atlikti tai ka tu nori atlikti. Geriau pasidaryk API kokio tau reikia ir kreipkis per ji, tegu vaiksto duomenis xml, json, html ar kt. teksto formatu o ne php duok useriui rasyt
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Manualai.lt Forumas

Ats: include arba require apsauga, naudojant kitame tinklapyje
« Atsakymas #3 Įrašytas: 2012-08-06 13:23:46 pm »

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: include arba require apsauga, naudojant kitame tinklapyje
« Atsakymas #4 Įrašytas: 2012-08-06 13:30:33 pm »
Na mažai patirties turiu, tad nesuprantu kur slypi nesaugumo problema. Su INCLUDE viskas akivaizdu, o dabar naudoju FOPEN. Tai tiesiog duombazėje turiu nustatytus kelis  URL ir pagal poreikį FOPEN atidaro vieną iš jų kartu nusiųsdamas GET būdu tris duomenis, tai visi jie man įtakos neturi, tai tiesiog reikalingi tam žmogui, į kurio failus kreipiamasi. Jis gali juos nors ir kitokius pasidaryti, man tas nieko nekeičia.

O į tą mano failą, kur viskas prasideda, tik mokejimai.lt gali kreiptis, nes kitu atveju paprastai paleidęs tą failiuką gausi klaidą, dėl saugumo ten visokių dalykų pridaryta yra, tad paprastai nepaleisi failo.

Tad nematau per kur būtų galima kažką kenksmingo padaryti mano sumąstytu variantu.
O va kitam kartui, ką gali patarti, kur pasiskaityti apie tuos API kūrimus saugumui ir t.t. ?

Prisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7385
  • Karma: +226/-15
    • Žiūrėti profilį
    • mano CV
Ats: include arba require apsauga, naudojant kitame tinklapyje
« Atsakymas #5 Įrašytas: 2012-08-06 13:43:12 pm »
Na mažai patirties turiu, tad nesuprantu kur slypi nesaugumo problema. Su INCLUDE viskas akivaizdu, o dabar naudoju FOPEN. Tai tiesiog duombazėje turiu nustatytus kelis  URL ir pagal poreikį FOPEN atidaro vieną iš jų kartu nusiųsdamas GET būdu tris duomenis, tai visi jie man įtakos neturi, tai tiesiog reikalingi tam žmogui, į kurio failus kreipiamasi. Jis gali juos nors ir kitokius pasidaryti, man tas nieko nekeičia.

O į tą mano failą, kur viskas prasideda, tik mokejimai.lt gali kreiptis, nes kitu atveju paprastai paleidęs tą failiuką gausi klaidą, dėl saugumo ten visokių dalykų pridaryta yra, tad paprastai nepaleisi failo.

Tad nematau per kur būtų galima kažką kenksmingo padaryti mano sumąstytu variantu.
O va kitam kartui, ką gali patarti, kur pasiskaityti apie tuos API kūrimus saugumui ir t.t. ?


tiesiog ismok naudotis keliais dideliais API ir ju aprasymuose prisiskaitysi pakankamai. Sukurk koki Facebook Aps'a, Google Charts/Maps ar kanors, Yahoo YQL. Gali googlint kaip padaryt saugu API, apie visokias atakas ar dar ka..

http://phpsec.org/projects/guide/
http://php.robm.me.uk/

http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/
http://net.tutsplus.com/tutorials/php/30-php-best-practices-for-beginners/
http://www.cyberciti.biz/tips/php-security-best-practices-tutorial.html


cia daug geru tips'u del performance:

http://developer.yahoo.com/performance/
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Manualai.lt Forumas

Ats: include arba require apsauga, naudojant kitame tinklapyje
« Atsakymas #5 Įrašytas: 2012-08-06 13:43:12 pm »