SQL Injection / Interjection

gurax

Pan ignoramus
SQL Injection / Interjection

Programimi i faqeve dinamike, shume shpesh angazhon programim me nje nga server-side prog.lang (php, asp, etj) dhe nje database si shtylle kurrizore per ruajtjen e informacionit.

Nje nder "hack"-et me popullore ndaj ketyre lloj faqeve jane ato qe quhen me emrin "SQL injection" apo "SQL Interjection" dhe qe kane si synim kryesor manipulimin apo leximin arbitrar te informacionit qe permbahet ne database.

Nese keni ndonje eksperience, keshille apo njohuri per kete gje, mund te shkruani ketu.
 

SkErDi

Primus registratum
Re: SQL Injection / Interjection

Interesante do jete info qe do jepet ketu. Dmth edhe mua me intereson pasi kam ne krijim e siper nje web-php+db-sql qe do aksesohet nga interneti. Nese "Guraxi dhe koleget e tij" do me krijoje nje APN private timen atehere ky sistem do jete disi me i izoluar dhe them se do kem me pak probleme.
/ubb/images/%%GRAEMLIN_URL%%/wave.gif
 

gurax

Pan ignoramus
Re: SQL Injection / Interjection

Skerd, s'ke shance fare pere private APN. Per nje APN te re, dikur kur u desh ne vaft, u realizua pas 2 muajsh. Dhe ishte APN per nje sherbim te ri companywise.
Ndersa per keto SQL injection, une kam gjetur disa gjera qe do t'i sjell edhe ketu.
 

SkErDi

Primus registratum
Re: SQL Injection / Interjection

Po une as e cova neper mend nje gje te tille, ata vete me thane. Do kushtonte ca por ... perballohet /ubb/images/%%GRAEMLIN_URL%%/smile.gif
C'faj kam une? Une e dua tani !! /ubb/images/%%GRAEMLIN_URL%%/lol.gif
 

SkErDi

Primus registratum
Re: SQL Injection / Interjection

... ore me gjej si te perdor si Admin Mac-un se s'te ndahem une /ubb/images/%%GRAEMLIN_URL%%/laugh.gif
 

ermali86

Primus registratum
Re: SQL Injection / Interjection

kam une nje rast ekskluziv te sql_injection. Mund tju tregoj nese doni sql_injection qe i bera tonit tek shqiptube.com
E kam te filmuar.
 

gurax

Pan ignoramus
Re: SQL Injection / Interjection

Nese mundesh.
Besoj se ka shume te interesuar per kete gje. Une po, do te doja te merrja sa me teper informacion per mbrojtje sa me efikase kundrejt sulmeve te ketij lloji.
 

Aldoalbania

Primus registratum
Re: SQL Injection / Interjection

un kam disa eksperienca me SQL Injection.

SQL injection eshte nje metode te cilen shumica e administratoreve e kane rregulluar. ajo konsiston ne dhenjen e parametrave ne menyre te atille qe sulmuesi te mundet te ekzekutoje kod ne Server.

shembull i programi SQL

SELECT fieldlist
FROM table
WHERE field = 'usernametext';

sic e shofim ato qe perdoruesi shkruan futen ne thonjeza teke,sulmuesi i mbyll thojnezat dhe jep udhezime ndaj serverit.

username qe user shtypi : ' OR 1=1 --
dhe programi i sql do te ekzekutohej keshtu

SELECT fieldlist
FROM table
WHERE field = ' ' OR 1=1 --

dmth dhe kthen false nga login, por 1=1 eshte gjithmon e vertete (TRUE) keshtu qe FALSE or TRUE = TRUE gje qe lejon hyrjen ne cdo llogari ne databaze. por meqe programi s'eshte i programuar ne menyre te atille kjo metode te ben login me adresen e pare qe gjen.

SQL injection eshte shume me e avancuar se kaq. por qe besoj se s'eshte vendi i duhur per ta shtjelluar ate /ubb/images/%%GRAEMLIN_URL%%/laugh.gif
 

gurax

Pan ignoramus
Re: SQL Injection / Interjection

Ne fakt une do te thosha qe eshte vendi shume i duhur per te shtjelluar sa me teper te jete e mundur, sepse ndryshe kthehet ne te anasjellten e "security through obscurity". Une do te doja te diskutohej ketu ne kendveshtrimin e atij qe ngre website dhe kerkon te eliminoje sulme te ketij lloji, dhe jo atij qe do te mesoje si behen sulme te ketij lloji.

Per te vazhduar me tej kete qe shkojti AldoAlbania, ju ftoj te lexoni kete material.

http://www.webadepts.com/showthread.php?p=31
 

Enea Xhani

Forumium maestatis
Sot shumica e websiteve qe instalojne si cms Joomla ose Wordpress* mund te hackohen shume lehte, thjeshte duke i uploaduar nje shell (c99.php) ne serverin e tyre dhe me pas mund ti kontrollosh shume lehte te gjithe domainet qe jane te vendosur aty ! Keshtu ndodhi disa dite me pare me nje kompani qe sdua tja permend emrin, por morem ne kontroll te gjithe domain qe ishin te vendosur ne ate server ! Sot asgje seshte e sigurt ! Dhe wordpressi qe u mbante e sigurt tani po del jashte loje dhe ka hyr si fuqi Drupal, por dhe Drupal keshtu do te perfundoje sa ti dalin Exploitet dhe Shellat ! :)
 

Al-Punk

Still here
Eshte e qarte qe po instalove nje shell si c99.php ke nje fare accessi, por si e uploadon ate shell ne nje faqe me Drupal nuk e kam shume te qarte.
Duhet te pranojme qe shumica e problemeve qe vijne me hostet ka te beje me programimin e dobet te faqeve, ose mos updated ne versionet e fundit
 

Enea Xhani

Forumium maestatis
Eshte e qarte qe po instalove nje shell si c99.php ke nje fare accessi, por si e uploadon ate shell ne nje faqe me Drupal nuk e kam shume te qarte.
Duhet te pranojme qe shumica e problemeve qe vijne me hostet ka te beje me programimin e dobet te faqeve, ose mos updated ne versionet e fundit
O mandi te kerkoj falje e kisha per Wordpressin tani e ndryshova ! :)
Ne fakt ty mandi ta shpjegova ne facebook me ane te Symlink-ut qe u be ai budalliku nejse kaluan ato gjona ! :)
 

Enea Xhani

Forumium maestatis
Eshte e qarte qe po instalove nje shell si c99.php ke nje fare accessi, por si e uploadon ate shell ne nje faqe me Drupal nuk e kam shume te qarte.
Duhet te pranojme qe shumica e problemeve qe vijne me hostet ka te beje me programimin e dobet te faqeve, ose mos updated ne versionet e fundit
Mandi ketu me fjale skam se si ta shpjegoj por une personalisht kam hyre ne disa servera qe kan pasur domain te ndryshem mbrenda ne te ! dhe pastaj nese doja i nxjerrja mass hacked ! Ekziston nje menyre me hyre ne server me ane te Symlink-ut !
 

Enea Xhani

Forumium maestatis
Vendosni ne forme indexi " anti_dos.php " kodet e meposhme dhe do te ndaloni IP-te qe ju bejne Ddos sulme nga VPS apo Pc te ndryshem !
Thjesht kopjojeni kodin e meposhtem krijoni nje index ne gjuhen PHP, emertojeni si anti_dos.php dhe upload ne host nepermjet FTP-se.

PHP:
<?php

/*
CHMOD /iplog/ to 777
Create and CHMOD /iplog/iplogfile.dat to 666
add the following line in any important .php file in the same directory as your anti_dos.php file so it can check IPs when that file is loaded, best example is index.php if you have it.
include("anti_dos.php"); //anti-DoS, prevents rapid accessing

if you have a known cookie on your site,
you can use this, otherwise just ignore this, it will set a different limit
for people with this cookie

I use yourothercookie as the cookie ID for the forum, my forum uses ID
greater than 0 for all members and -1 for guests and members who have logged out,
so making it match greater than zero means members will get better access and
guests with or without cookies won't

Also I use these cookies in the "flood alert" emails to make sure an important user didn't get banned. Someone could fake a cookie, so always be suspicious. Tez
*/
$cookie = $_COOKIE['yourcookie'];
$othercookie = $_COOKIE['yourothercookie'];
 
if($cookie && $othercookie > 0) $iptime = 20;  // Minimum number of seconds between visits for users with certain cookie
else $iptime = 10; // Minimum number of seconds between visits for everyone else
 
$ippenalty = 60; // Seconds before visitor is allowed back
 
if($cookie && $othercookie > 0)$ipmaxvisit = 30; // Maximum visits, per $iptime segment
else $ipmaxvisit = 20; // Maximum visits per $iptime segment
 
$iplogdir = "./iplog/";
$iplogfile = "iplog.dat";

$ipfile = substr(md5($_SERVER["REMOTE_ADDR"]), -2);
$oldtime = 0;
if (file_exists($iplogdir.$ipfile)) $oldtime = filemtime($iplogdir.$ipfile);

$time = time();
if ($oldtime < $time) $oldtime = $time;
$newtime = $oldtime + $iptime;

if ($newtime >= $time + $iptime*$ipmaxvisit)
{
touch($iplogdir.$ipfile, $time + $iptime*($ipmaxvisit-1) + $ippenalty);
$oldref = $_SERVER['HTTP_REFERER'];
header("HTTP/1.0 503 Service Temporarily Unavailable");
header("Connection: close");
header("Content-Type: text/html");
echo "<html><body bgcolor=#999999 text=#ffffff link=#ffff00>
<font face='Verdana, Arial'><p><b>
<h1>Temporary Access Denial</h1>Too many quick page views by your IP address (more than ".$ipmaxvisit." visits within ".$iptime." seconds).</b>
";
echo "<br />Please wait ".$ippenalty." seconds and reload.</p></font></body></html>";
touch($iplogdir.$iplogfile); //create if not existing
$fp = fopen($iplogdir.$iplogfile, "a");
$yourdomain = $_SERVER['HTTP_HOST'];
    if ($fp)
    {
    $useragent = "<unknown user agent>";
    if (isset($_SERVER["HTTP_USER_AGENT"])) $useragent = $_SERVER["HTTP_USER_AGENT"];
    fputs($fp, $_SERVER["REMOTE_ADDR"]." ".date("d/m/Y H:i:s")." ".$useragent."\n");
    fclose($fp);
    $yourdomain = $_SERVER['HTTP_HOST'];

    //the @ symbol before @mail means 'supress errors' so you wont see errors on the page if email fails.
if($_SESSION['reportedflood'] < 1 && ($newtime < $time + $iptime + $iptime*$ipmaxvisit))
    @mail('flood_alert@'.$yourdomain, 'site flooded by '.$cookie.' '
    .$_SERVER['REMOTE_ADDR'],'http://'.$yourdomain.' rapid website access flood occured and ban for IP '.$_SERVER['REMOTE_ADDR'].' at http://'.$yourdomain.$_SERVER['REQUEST_URI'].' from '.$oldref.' agent '.$_SERVER['HTTP_USER_AGENT'].' '
    .$cookie.' '.$othercookie, "From: ".$yourdomain."\n");
    $_SESSION['reportedflood'] = 1;
    }
    exit();
}
else $_SESSION['reportedflood'] = 0;

//echo("loaded ".$cookie.$iplogdir.$iplogfile.$ipfile.$newtime);
touch($iplogdir.$ipfile, $newtime); //this just updates the IP file access date or creates a new file if it doesn't exist in /iplog
?>
E kam testuar kete gje dhe ka punuar mire !
Nese keni ndonje gje qe nuk ju shkon me lajmeroni ! :)

 
Top