Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server > Metin2 PServer Guides & Strategies
You last visited: Today at 07:33

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Datenbankzugriff für ausenstehende zu 100% Sperren

Discussion on Datenbankzugriff für ausenstehende zu 100% Sperren within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2008
Posts: 324
Received Thanks: 123
Lightbulb Datenbankzugriff für ausenstehende zu 100% Sperren

Hey, da mir ne Sicherheitslücke in der DB aufgefallen ist (soweit ich zur Zeit weiß kann man diese auch nicht fixxen -.-) hab ich mir mal Gedanken gemacht, ob man nicht einfach auch allen Ip´s (außer ein paar erlaubte) sperren lassen kann.


Das kam dabei heraus :

Datenbank vor fremdzugriff schützen :
Vorraussetzung:
- installierte IPFW Firewall!


ihr öffnet die /etc/ipfw.rules datei und löscht den eintrag mit dem port: 3306 (alle davon !)

dann hat standartmäßig niemand zugriff auf die DB ! (außer der Mt2 server da er über localhost läuft)
um einer einzelnen Ip den Zugriff auf die Db zu erlauben müsst ihr eingeben
Code:
ipfw -q add allow all from ip to any 3306 in
und:
Code:
ipfw -q add allow all from ip to any 3306 out


also für die ip 123.145.167.123 sieht es dann folgendermaßen aus:
Code:
ipfw -q add allow all from 123.145.167.123 to any 3306 in
und:
Code:
ipfw -q add allow all from 123.145.167.123 to any 3306 out

Um am Tag darauf (bzw dann wenn sich die ip von dem der zugriff haben will geändert hat) machen wir folgendes:

Code:
ipfw -q add deny all from 123.145.167.123 to any 3306 in
und:
Code:
ipfw -q add deny all from 123.145.167.123 to any 3306 out
um der Ip den Zugriff zu sperren (also der alten )

danach suchen wir uns die neue ip raus

und erlauben der wieder den zugriff ^^

um die änderungen zu übernehmen noch eingeben :
Code:
/etc/rc.d/ipfw restart
Natürlich alles in Freebsd eingeben


Erklärung dazu:
Die Firewall weist alle connect-versuche auf den port 3306 standartmäßig zurück wir geben nur ein ob einer bestimmte Ip erlaubt ist auf die DB zu connecten (also der port freigegeben ist!)

um die änderungen zu übernehmen noch eingeben :
Code:
/etc/rc.d/ipfw restart

ADD: Ihr müsst natürlich die Ip der Homepage, auf der eure Regi etc steht freigeben, dies sollte für euch allerdings kein Problem darstellen, funktioniert nach dem gleichen Schema oder per /etc/ipfw.rules

Für alle die mehr wissen wollen: <----- Sehr zu empfehlen

Für alle, die gleich wieder sagen: " Das weiß doch jeder etc" oder "ist doch total einfach":
Nicht jeder weiß wie es geht und genau denen, die es nicht wissen hilft das enorm!
Für mich ist es ne arbeit von 2 minuten die Commands etc aus der Ipfw.rules rauszulesen und umzuschreiben aber es gibt durchaus Leute, die es nunmal nicht verstehen!
Wem es also nicht passt drücke doch bitte ALT+F4
LiiKeZZ is offline  
Thanks
5 Users
Old 05/13/2011, 19:30   #2


 
ZyoX's Avatar
 
elite*gold: 83
Join Date: Apr 2010
Posts: 1,665
Received Thanks: 685
Sieht ganz nett aus.

Quote:
[...]da mir ne Sicherheitslücke in der DB aufgefallen ist (soweit ich zur Zeit weiß kann man diese auch nicht fixxen -.-) [...]
Nur das beunruhigt mich.
ZyoX is offline  
Old 05/13/2011, 19:31   #3
 
elite*gold: 0
Join Date: Jan 2011
Posts: 818
Received Thanks: 974
Naja, gehört eher zum Grundwissen, nicht zu Metin2, da so ziemlich jeder Server eine eigene Datenbank besitzt!

Außerdem muss man auch noch, wenn man ein Proxy auf dem selben Server laufen lässt, dem Proxy Benutzerdaten hinzufügen!
0x4D617276 is offline  
Thanks
1 User
Old 05/13/2011, 19:42   #4
 
elite*gold: 0
Join Date: Oct 2008
Posts: 324
Received Thanks: 123
nein muss man nicht 0x4d617276, da du über den proxie zwar mit der root-ip zugreifts, allerdings nicht über localhost sondern über die root-ip und der ist die db ja nicht frei gegeben ^^

Ja es gehört zum Grundwissen, da ich es allerdings im Zusammenhang mit metin2 benutze/entdeckt habe, denke ich ist es gerechtfertigt, dass es hier steht

@ ZyOX:
darauf kommen 99,99% der Com eh nicht,da sie einfach nicht das nötige wissen dazu haben also keine Sorge

Und glaub mir es gibt so viele Bugs, durch die man auf einen Server zugreifen kann, da macht der auch nichts mehr aus ^^

Zurzeit sind mir 49 Bugs bekannt, von denen man 45 Fixen kann ^^
LiiKeZZ is offline  
Old 05/13/2011, 19:51   #5
 
elite*gold: 0
Join Date: Jan 2011
Posts: 818
Received Thanks: 974
Also wenn du alles, Proxy, Game Server, Datenbank auf einem Root laufen lässt musst du Userdaten hinzufügen, da man sonst einfach dem Proxy joinen kann, somit hätte man, wenn auf die Datenbank zugreift die IP des Roots, sprich localhost!


Achja musst noch die IP des Webspace´s freigeben, sonst wird die hp nicht funtzen!
ABER, dann musst du auch wieder deine HP gegen SQL Injection usw. schützen, sonst sind sie ganz schnell wieder in deiner Datenbank!
0x4D617276 is offline  
Old 05/13/2011, 20:02   #6
 
elite*gold: 0
Join Date: Oct 2008
Posts: 324
Received Thanks: 123
0x4D617276 liest du dir eigentlich thread´s auch mal ganz durch?

1. nein man joined nicht mit localhost sonder mit der IP des ROOT´s (glaub mir ich weiß des ich habs selbst probiert!)
denn das shcema sieht dann folgendermaßen aus:
User-->Proxie-->Internet--->Root-DB

und eben nicht:
User-->Proxie-->Root-DB
2. des Mit der HP etc hab ich schon lange drin stehen ganz unten unter : ADD

3. das tutorial ist nur dafür da, dass man grundsätzlich mal nen Schutz hat, das mit der Homepage etc ist mir sehrwohl bewusst, nur kann man die rechte der Homepage auch ganz einfach beschränken ^^
LiiKeZZ is offline  
Old 05/13/2011, 20:40   #7
 
elite*gold: 0
Join Date: Jan 2011
Posts: 1,484
Received Thanks: 3,151
Loool, *** !
Musst du machen allowed hosts diggah, nicht umständlich tun
Port sperren !

/Edit: Und ihr wisst schon, was passiert, wenn du versuchen mit Proxy selbe
IP auf Root zu connecten Proxy laufen?
Daroolein is offline  
Thanks
1 User
Old 05/13/2011, 23:05   #8
 
elite*gold: 0
Join Date: Oct 2008
Posts: 324
Received Thanks: 123
Daroo ihr blickt es nicht oder?

es macht die ports zu und das bedeutet wiederum, dass man von außen nicht zugreifen kann.

Und selbst wenn auf dem Root ein proxie ist geht dieser zuvor ins internet und müsste wieder durch die Firewall durch mit der IP des Server und diese ist nicht freigegeben.

naja wenn ihr anderer Meinung seit probiert es ruhig aus

Und allowed host bringt leuten mit ner wechselnden Ip rein garnichts ^^

das Tut ist speziell für leute mit einer wechselnden IP gedacht
LiiKeZZ is offline  
Old 05/13/2011, 23:14   #9
 
elite*gold: 0
Join Date: Jan 2011
Posts: 1,484
Received Thanks: 3,151
Hehe, da meint wohl einer, er ist klüger
Also um es klarzustellen, wenn der Root merkt, dass jemand
mit der selben IP connected, die der Root hat, gibts Connection Refused.
Abgesehen davon, wird der Root doch wohl intern zugreifen können, ansonsten
würde MySQL nicht starten.
So, und man braucht trotzdem diesen ganzen Müll nicht. Man erstellt einfach nen
localhost User, gibt ein
PHP Code:
mysql -u lu1 
dann
PHP Code:
UPDATE mysql.user SET host='IP' WHERE user='root' 
und schon hat man es.
Ich hab jetzt mal keine Facepalms eingefügt, nimm einfach deine aus deinem
Post, und denk sie dir in meinem Post.

/Edit: Btw. heißt es im Singular Proxy und im Plural Proxies. Nicht Proxie und Proxys.
Daroolein is offline  
Thanks
3 Users
Old 05/13/2011, 23:16   #10
 
~LuckyStrike~'s Avatar
 
elite*gold: 0
Join Date: Jul 2008
Posts: 1,812
Received Thanks: 1,977
Ja mein Gott Port 3306 wird komplett blocked ausser auf dem Localhost der den MT2 Server leitet sprich V-Box oder Hamachi whatever ... ist nicht schwer zu verstehen aber was bringts dir ??

Ständig wieder die Rule rein && Raus tun damit du in deiner Datenbank was bearbeiten kannst ... Unnötig
~LuckyStrike~ is offline  
Old 05/13/2011, 23:19   #11
 
.Scy's Avatar
 
elite*gold: 15
Join Date: Jul 2010
Posts: 3,926
Received Thanks: 1,158
das Deny is unnötig einfach die ip im allow ändern und fertig.
wenn man das mit dem deny immer macht hat man am ende ca. 2000000000deny's und 1 allow. ohne das deny da er ja so oder so port 3306 net frei gibt nur für die 1 ip hat man keine deny's und nur einen allow.
.Scy is offline  
Old 05/13/2011, 23:21   #12
 
elite*gold: 0
Join Date: Jan 2011
Posts: 1,484
Received Thanks: 3,151
Btw. ist euch schon klar, dass falls eine IP auf allow und deny steht allowed wird?
Daroolein is offline  
Thanks
4 Users
Old 05/13/2011, 23:24   #13
 
~LuckyStrike~'s Avatar
 
elite*gold: 0
Join Date: Jul 2008
Posts: 1,812
Received Thanks: 1,977
Ouh man der Thread gehört in den Papierkorb ....
Leider mal wieder nur etwas unnötiges ^^
~LuckyStrike~ is offline  
Thanks
1 User
Old 05/13/2011, 23:26   #14
 
elite*gold: 0
Join Date: Oct 2008
Posts: 324
Received Thanks: 123
Quote:
Originally Posted by ~LuckyStrike~ View Post
Ja mein Gott Port 3306 wird komplett blocked ausser auf dem Localhost der den MT2 Server leitet sprich V-Box oder Hamachi whatever ... ist nicht schwer zu verstehen aber was bringts dir ??

Ständig wieder die Rule rein && Raus tun damit du in deiner Datenbank was bearbeiten kannst ... Unnötig
Nein die jeweilige Rule ist für einen ganzen Tag (bzw solange bis sich deine Ip ändert) aktiv.

An Daroo:
ja so kann man es per mysql auch machen, allerdings gibt es wie im Thread angesprochen nen netten kleinen Bug in Mysql und der einzige mir bekannte weg diesen zu fixxen ist es den port zu blocken.
Außerdem fixxt man dadurch zb folgenden Hack-Aufbau:

server besitzt zb das script von hen!
---> user bekommt das mit sucht sich die variables raus aus der config datei
--->included die Datei auf seinem Webspace
---> kann damit in der db per PhP scripts machen was er will.

Naja jeder wie er es mag, für mich ist das die sicherste Variante.
LiiKeZZ is offline  
Old 05/13/2011, 23:30   #15
 
elite*gold: 0
Join Date: Jan 2011
Posts: 818
Received Thanks: 974
Quote:
Originally Posted by LiiKeZZ View Post
Nein die jeweilige Rule ist für einen ganzen Tag (bzw solange bis sich deine Ip ändert) aktiv.

An Daroo:
ja so kann man es per mysql auch machen, allerdings gibt es wie im Thread angesprochen nen netten kleinen Bug in Mysql und der einzige mir bekannte weg diesen zu fixxen ist es den port zu blocken.
Außerdem fixxt man dadurch zb folgenden Hack-Aufbau:

server besitzt zb das script von hen!
---> user bekommt das mit sucht sich die variables raus aus der config datei
--->included die Datei auf seinem Webspace
---> kann damit in der db per PhP scripts machen was er will.

Naja jeder wie er es mag, für mich ist das die sicherste Variante.
Tja, und dann musste jeden Tag die Rule ändern!
Einfach so machen wie Daroo meint!
Und dieser "Bug" in MySQL wie du ihn nennst, kannst du das mal genauer erläutern?? In welchen Thread stand das usw.
0x4D617276 is offline  
Reply


Similar Threads Similar Threads
Datenbankzugriff und Mob Problem
08/21/2010 - Metin2 Private Server - 2 Replies
Guten Abend, ich bin relativ neu auf dem Gebiet Privatserver, deswegen habe ich einfach einmal ein wenig experimentiert. Dabei ergeben sich einige Probleme: 1.: Nach dem Umstieg auf DynDNS habe ich keinen Zugriff auf die DB mehr(habe den MySQL Port weitergeleitet), nurnoch über die lokale IP, aber ich würde gerne mit anderen Arbeiten die dann Zugriff auf den Server haben sollten. Ich habe einfach bei Host die DynDNS Domain angegeben. 2.: Ich habe die GM_Guild_Build Map entbuggt und es gab...
Datenbankzugriff
07/11/2010 - World of Warcraft - 2 Replies
Hi, ich spiele nun schon eine gewisse Zeit WoW. Ich würde gerne selbst ein AddOn basteln, weil es bisher noch kein solches gibt. Wenn ihr eines kennt, so sagt es mir bitte! Funktion: Wenn man einen Gegner anvisiert, wird in einer Liste gezeigt was er droppt. Nun meine Frage: Wie kann ich mit einem AddOn Datenbanken auslesen z.B. Buffed, für die Dropauflistung? Mit freundlichen Grüßen, Kevin :)
html/php datenbankzugriff?
04/03/2010 - Web Development - 5 Replies
<HTML> <HEAD> <TITLE>User anlegen</TITLE> </HEAD> <BODY> <?php // Die Parameter für die Datenbank-Verbindung festlegen $servername = "192.168.2.100"; $benutzer = "root";
METIN P Server Navicat für ausenstehende !!
02/24/2010 - Metin2 Private Server - 8 Replies
Hallo Leute .. Wiee kann ich mit navicat beim kollegen auf den hamachi server connecten also Kollege hat navicat kann sich einloggen ich von mir zuhause moechte mich bei navicat einloggen wie geht des `?
befehle sperren und WIRKLICH sperren!? kein banword!
02/05/2010 - Metin2 Private Server - 7 Replies
also ich hätte ne frage.. kann mir jemand erklären / per tv zeigen wi eman befehle komplett sperrt? banword funkt nicht etc. wäre geil da ich meinen gm server nicht ständig restarten will leute lest meinen lezten post in diesen thread und helft mir pls



All times are GMT +1. The time now is 07:35.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.