ACCES INTERZIS | blog de programare si securitate IT


Prin ce se caracterizeaza acest formular de comentarii?

  • scriptul PHP isi creeaza singur tabelul in care va stoca comentariile daca acesta nu exista in baza de date (deci mai putina munca in phpmyadmin)
  • protectie antispam 100% datorita sistemului CAPTCHA integrat
  • toate datele introduse sunt validate server-side (nu bag mana in foc caci inca nu sunt doxa de programare, dar cred ca este securizat destul ca sa nu execute vreun rau-voitor o injectie sql)
  • evidentierea campurilor care contin date invalide
  • pastrarea datelor in campuri atunci cand scriptul detecteaza o eroare
  • background-ul fiecarui comentariu alterneaza de la un comentariu la altul pentru o mai buna vizualizare a comentariilor
  • designul formularului este creat EXCLUSIV din CSS

Citeste tot articolul »

Post to Twitter Publica acest articol pe Twitter

Publicat de: admin
Ultima modificare: 10, 2010, 16:01
Comentarii: 1
Etichete
Etichete: , , ,
Categorii: programare

Prin ce se caracterizeaza acest formular de contact?

  • toate datele sunt validate server-side
  • protectie antispam 100% datorita sistemului CAPTCHA integrat in formular
  • campul unde exista o eroare este evidentiat
  • datele completate raman in campurile formularului atunci cand se detecteaza o eroare
  • skin creat EXCLUSIV din CSS
  • formularul poate fi usor de integrat intr-un website
  • skinul emailului trimis poate fi formatat prin folosirea tagurilor HTML si a regulilor CSS aplicate inline
  • in subsolul emailului trimis exista cateva informatii despre expeditor

Citeste tot articolul »

Post to Twitter Publica acest articol pe Twitter

Publicat de: admin
Ultima modificare: 10, 2010, 16:03
Comentarii: 2
Etichete
Etichete: , ,
Categorii: programare

A venit zilele trecute la mine un vecin ca sa ii bag pe laptop Windows 7. Laptopul era un Acer Aspire 7520 cu Windows Vista incorporat si limba italiana ca limba default. Asa ca nu intelegeam mai nimic din meniuri. Dar nu trebuia decat sa ii dau un restart ca sa pot intra in BIOS sa setez prioritatea bootarii. In timp ce bajbaiam prin meniu si ma chinuiam sa ghicesc care este butonul de restart mi-am adus aminte de o linie de cod care iti permite sa restartezi calculatorul din Command Prompt.


shutdown -r -t 1

-r inseamna ca PC-ul va fi restartat iar -t 1 inseamna ca PC-ul va fi restartat peste o secunda.

Tot aceasta linie de cod poate fi folosita cand vrem ca PC-ul sa se stinga peste o anumita perioada. De exemplu, ma uit la un film, e seara tarziu si imi e ca o sa adorm si calculatorul o sa ramana deschis pana maine dimineata. Asa ca scriu in Command Prompt urmatoarea linie de cod:


shutdown -s -t 7200

-s inseamna ca PC-ul se va stinge si -t 7200 inseamna ca PC-ul se va stinge peste 7200 de secunde. Adica 2 ore.

Post to Twitter Publica acest articol pe Twitter

Publicat de: admin
Ultima modificare: Feb 23, 2010, 10:45
Comentarii: 0
Etichete
Etichete:
Categorii: sisteme de operare

Scriptul PHP de mai jos extrage extensia unui fisier. Este util atunci cand dezvoltam formulare de upload sau cand citim dinamic un folder de fisiere. De exemplu, un folder de imagini folosit de o galerie de imagini sau un folder de fonturi folosit de catre un CAPTCHA.

<?php
function extract_extension($file) {
	if (strrpos($file,'.')) {
		$extension = strtolower(substr($file,strrpos($file,'.'),100));
	} else {
		$extension = '';
	}
	return($extension);
}

//example
echo extract_extension("header.inc.php");//output-ul va fi .php
?>

Cand cream un formular de upload pentru adaugare de poze trebuie sa nu permitem utilizatorilor sa urce pe serverul nostru de hosting orice vor ei. Trebuie sa fim siguri ca ceea ce utilizatorul urca este intr-adevar o poza si nu altceva. Ca de exemplu un executabil malitios sau pagini scam care evident ar face rau serverului, website-ului si imaginii noastre. Deci, de fiecare data cand scriem cod server-side trebuie sa plecam de la premisa ca ceea ce utilizatorul introduce nu e de incredere. De aceea, trebuie sa adaugam toate restrictiile necesare.

De obicei, o galerie de imagini se hraneste dinamic cu imaginile unui folder de pe serverul de hosting. Acest script PHP ne ajuta sa fim siguri ca galeria citeste din folder doar imaginile.

Post to Twitter Publica acest articol pe Twitter

Publicat de: admin
Ultima modificare: 06, 2010, 07:43
Comentarii: 0
Etichete
Etichete:
Categorii: programare

Scriptul PHP de mai jos extrage adrese de email de pe o pagina web.

<?php
$url = "http:/www.genericwebsite.com/contact.php";
//getting the source-code of the web page
$sc = file_get_contents($url);
$sc = strtolower($sc);
$forbidden_symbols = array('?', '!', ',', ';', ':', '+', '=', '/', '\\', '"', '\'', '`', '’', '“', '”', '#', '$', '%', '^', '&amp;', '*', '(', ')', '[', ']', '{', '}', '|', '<', '>');
//removing all symbols from the source-code less "@", "." and "_"
$sc = str_replace($forbidden_symbols, ' ', $sc);
//storing all words from the source-code into an array
$words_found = explode(' ', $sc);

//verifying each word from array if it is an email address
for ($i = 0; $i < count($words_found); $i++) {
	//if the word contains the symbols "@" that means it is an email address
	if (strpos($words_found[$i], '@')) {
		//I make sure that the email address has no empty spaces in the beginning and in the and of it
		$email_address = trim($words_found[$i]);

		//I make sure that the email address has no symbols in the beginning and in the and of it
		//I apply all these cleaning filters because the source-code can be pretty messy
		$first_char = substr($email_address, 0, 1);
		while (!ctype_alpha($first_char)) {
			$email_address = substr($email_address, 1, strlen($email_address));
			$first_char = substr($email_address, 0, 1);
		}

		$last_char = substr($email_address, strlen($email_address) - 1, 1);
		while (!ctype_alpha($last_char)) {
			$email_address = substr($email_address, 0, strlen($email_address) - 1);
			$last_char = substr($email_address, strlen($email_address) - 1, 1);
		}

		//I make sure that the extracted string is really an email address
		if (eregi("^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,4}$", $email_address)) {
			echo $email_address.'<br />';
		}
	}
}
?>

Citeste tot articolul »

Post to Twitter Publica acest articol pe Twitter

Publicat de: admin
Ultima modificare: 01, 2010, 14:40
Comentarii: 0
Etichete
Etichete: ,
Categorii: programare