WebElektronika

DVWA telepítése Linux operációs rendszeren

person access_time 2018.03.19.
A webes támadások elleni védekezés gyakorlására, tanulására több projekt is készült az elmúlt években. Az egyik ilyen demoalkalmazás a dvwa, amely ingyenes. A telepítés során különböző problémák léphetnek fel, az egyik ilyen az, hogy nem tudunk csatlakozni a MySql adatbázishoz az első használat során. Ezért ebben a cikkben lépésről lépésre mutatjuk be a config file és az adatbázis létrehozásának különböző fázisait,


Töltsük le a dvwa projektet, majd másoljuk fel a Linux szerverünkre, a var/www/html/ elérési útvonalon hozzunk létre egy könyvtárat DVWA-master néven. Ide csomagoljuk ki a letöltött zip file-t.

Ezután a böngészőbe írjuk be a Linux szerverünk IP címét az előbb létrehozott könyvtárnévvel együtt. Tekintettel arra, hogy még nem történtek meg a különböző beállítások, ezért a következő kép fogad minket (1. ábra).

kep
1. ábra   A demoprojekt nem tudott csatlakozni a MySql szerverhez
 

A neten találunk erre segítséget, de mi most úgy telepítjük ezt az alkalmazást, hogy nem "root" felhasználóként csatlakozunk az adatbázishoz.
A feltöltött és kicsomagolt projekt config file-ában találjuk a config.inc.php file-t, ahol az adatbázishoz történő csatlakozás különböző adatait tudjuk megadni. Navigáljunk el a config könyvtárba (2. ábra).

kep
2. ábra   A config.inc.php file megnyitása
 

A root könyvtárból könnyen át tudunk menni a config könyvtárba úgy, ha a cd parancsot így adjuk ki:

cd /var/www/html/DVWA-master/config

 

Ezután adjuk ki a következő parancsot:

nano config.inc.php

 

A "nano" szövegszerkesztő segítségével adjuk meg a dvwa adatbázist használó user-t és a jelszavát (3. ábra).

kep
3. ábra   A MySql adatbázis connection adatai
 

A telepítés során a usernév a "teszt", a password pedig a "jelszo" lesz. Ezeket az adatokat írjuk be az aposztrófok közé, majd mentsük el a változtatásokat.

Ha készen vagyunk a config.inc.php file szerkesztésével, akkor hozzuk létre a "teszt" nevű felhasználót a megadott jelszóval. Ehhez el kell indítanunk a mysql alkalmazást.
Adjuk ki a következő parancsot:

mysql -u root -p

 

A "-u" segítségével adjuk meg a felhasználónevet, a "-p" pedig a jelszó megadására szolgál (4. ábra). Figyeljünk arra, hogy amikor a "mysql" prompt után megadunk egy utasítást, akkor azt egy pontosvesszővel kell lezárnunk.

kep
4. ábra   A mysql elindítása
 

Nézzük meg először, hogy milyen adatbázisaink vannak a localhost-on! Ehhez ki kell adnunk a következő utasítást:

show databases

 

Ennek segítségével a mysql szerveren található adatbázisokat jelenítjük meg (5. ábra).

kep
5. ábra   A szerveren található adatbázisok

Most jelenítsük meg az adatbázis szerveren lévő felhasználókat. Adjuk ki a következő parancsot:

select user, host from mysql.user;

 

Az SQL parancsok írhatók nagy-, illetve kisbetűvel is. A kiadott utasítás után látjuk a felhasználók listáját (6. ábra).

kep
6. ábra   A MySql szerveren lévő felhasználók listája
 

Hozzunk létre egy "teszt" nevű felhasználót, illetve  "dvwa" néven egy adatbázist. Az adatbázist nem parancssorból hozzuk létre (hiszen nem ismerjük a demoprojekt által használni kívánt adatbázis sémáját), hanem majd a webes alkalmazás telepítésekor.

Adjuk ki a következő utasítást:

create user 'teszt'@'localhost' identified by 'jelszo'

 

Ha kiadjuk ezt az utasítást, akkor létrejön a "teszt" nevű felhasználó, amelynek a jelszava a  "jelszo" lesz (7. ábra).

kep
7. ábra   A "teszt" nevű felhasználó létrehozása

A config.inc.php file-ban felhasználó a kívánt jelszóval létrehozásra került. Ellenőrizzük ezt az állítást, adjuk ki a követkepző parancsot, amelynek segítségével újra kilistázzuk a felhasználók neveit.

select user, host from mysql.user;

 

Látjuk a 8. ábrán, hogy a "teszt" nevű felhasználónk létrehozásre került.

kep
8. ábra   Elkészült a "teszt" nevű felhasználó
 

Állítsuk be a "teszt" nevű felhasználó a "dvwa" adatbázishoz való jogosultságait! Ehhez a következő parancs kiadása szükséges:

grant all privileges on dvwa.* to 'teszt'@'localhost';

 

Látszik a kiadott utasításon (9. ábra), hogy nem adtuk be a dvwa adatbázis tábláinak a nevét. Nem ismerjük még a létrehozandó adatbázis tábláinak a neveit, de a "dvwa.*" segítségével a "teszt" felhasználó az összes táblához hozzá tud férni.

kep
9. ábra   A "teszt" felhasználó a dvwa adatbázishoz történő hozzáférésének beállítása

A böngészőben frissítsük a demoprojektünket, majd kattintsunk a "Create / Reset Database" nyomógombra. Ha mindent jól csináltunk, akkor a következő kép (10. ábra) fogad minket, majd 1-2 másodperc múlva átnavigálunk automatikusan a bejelentkező oldalra.

kep
10. ábra   Sikerült létrehozni a dvwa adatbázist
 

Noha a demo webes alkalmazásunkat sikeresen telepítettük, ellenőrizzük ezt a konzolban is. Ha kiadjuk a "show databases" utasítást, megjelenik a dvwa adatbázis is (11. ábra).

kép
11. ábra   A dvwa adatbázis elkészült
 

Nézzük most meg, hogy a dvwa adatbázis milyen táblákat tartalmaz. Ehhez a következő két utasítást kell kiadnunk:

use dvwa;

show tables;

 

Először kiválasztjuk a dvwa adatbázist, majd a következő utasítással megjelenítjük a kiválasztott adatbázisban található táblákat (12. ábra).

kep
12. ábra   A dvwa adatbázisban található táblák