Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inne][MySQL][PHP] Ochrona przed włamaniem do mysql
troian
post
Post #1





Grupa: Zarejestrowani
Postów: 184
Pomógł: 2
Dołączył: 3.02.2013

Ostrzeżenie: (0%)
-----


Witam, mam problem z włamaniem na serwer, tzn facet który dokonywał włamań zmieniał treść wyświetlaną na stronie która była zawarta w tabelach mysql, zastosowałem zabezpieczenia w postaci sprawdzania znaków jakie zostały wprowadzone do $_POST oraz $_GET oto fragment kodu sprawdzający ów działanie:
Pierwsza funkcja obcinająca niepotrzebne znaki: takie jak @ # itp [ do emaila mam inną funkcję ]
  1. function znaki($string) {
  2. $sprawdz = preg_match("/^[a-zA-Z0-9]+$/",$string);
  3. if($sprawdz) {
  4. return true;
  5. }
  6. else {
  7. return false;
  8. }
  9. }



następny to filtry które dla pewności usuwają ów znaki
  1. function clearstr($string) {
  2. $string = trim($string);
  3. $string = htmlspecialchars($string);
  4. $string = stripslashes($string);
  5. $string = mysql_real_escape_string($string);
  6. return $string;
  7.  
  8. }


do $_GET i $_POST które są tylko watościami liczbowymi dodaje przedrostek (int)

Oto jak to wygląda w kodzie
  1. funkcja dla watości liczbowej $_GET
  2. if (znaki($_GET['poz']))
  3. {
  4. $page = (int) clearstr($_GET['poz']);
  5. }
  6.  
  7. A $_POST w taki sposób:
  8.  
  9. znaki(clearstr($_POST['login']))
  10.  


Czy ktoś zna jeszcze jakiś sposób włamań oraz w jaki sposób można by go zabezpieczyć, Bardzo proszę o pomoc bo sporo się napracowałem przy stronie a teraz jakiś pajac od którego nie chciałem kupić projektu niszczy mi stronę.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Damonsson
post
Post #2





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Wyłącz serwer dla pewności wink.gif
Go to the top of the page
+Quote Post
modern-web
post
Post #3





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

Ostrzeżenie: (0%)
-----


Zablokuj pulę adresów IP, może poskutkować wink.gif


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
Wazniak96
post
Post #4





Grupa: Zarejestrowani
Postów: 550
Pomógł: 75
Dołączył: 5.06.2012
Skąd: Lębork

Ostrzeżenie: (0%)
-----


Moduł mysql_* jest już uważany za przestarzały, a wręcz ma być wyprowadzany z PHP. Do tego jest podatny na różne ataki. Poczytaj o PDO i bindValue. To pomaga na większość włamań (a przynajmniej nie znam żadnego możliwego obejścia tego). Do tego jest ono nowoczesne i ponoć szybsze, choć przy moich małych projektach nie wyczułem dużej różnicy smile.gif
Go to the top of the page
+Quote Post
modern-web
post
Post #5





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

Ostrzeżenie: (0%)
-----


Wydajność to kwestia drugorzędna, najważniejsza jest wygoda i poziom bezpieczeństwa. PDO faktycznie wprowadza dużo udogodnień. Spróbuj - polubisz.


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
troian
post
Post #6





Grupa: Zarejestrowani
Postów: 184
Pomógł: 2
Dołączył: 3.02.2013

Ostrzeżenie: (0%)
-----


Dziękuje za podsunięcie rozwiązania jednak było ono nieco inne, jednak czytałem o tym i wydaje się jednak lepszym pomysłem co do włamań była to moja wina jedna strona nie miała sprawdzania i można było modyfikować kod.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 19:18