Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Zabezpieczenie panelu admina


Rekomendowane odpowiedzi

Opublikowano

Witam,

Sugerując się materiałem Msb i prośbą FuBu postanowiłem dokonać aktualizacji owego sposobu. Na czym ów sposób polega? Zmieniając lokalizację katalogu administratora zmylisz włamywacza o tym fakcie, ale to nie wszystko! Włamywacz będzie myślał, że jest w poprawnym katalogu i jeżeli wyślę dane, nawet prawidłowe to poinformuje go o niepoprawnym haśle lub loginie, a informacje tj. IP, hasło, login i informacje przeglądarki zapiszę do katalogu! :-) Oto jak tego dokonać.

1. Musisz zmienić nazwę katalogu, dajmy na to - administracja, poza formalną zmianą nazwy katalogu IP.Board i panel ACP się rozpadnie. Nie uruchomisz go już. Aby temu zapobiec musisz po zmienianie nazwy katalogu wykonać następującą czynność:

Otwórz: initdata.php

Znajdź:

define( 'CP_DIRECTORY', 'admin' );

Zamień na:

define( 'CP_DIRECTORY', 'administracja' );

2. Oczywiście, nazwę musisz podać taką, jaką wybrałeś. Jaka jest wada tego zadania? Musisz wpisywać ręcznie zmieniony adres, ale czego nie robić się dla bezpieczeństwa strony! Kolejnym etapem jest zmiana oryginalnego katalogu z fałszywym ACP. Stwórz katalog lub jeżeli tamten stworzyłeś, zmień nazwę na oryginalną - admin! A teraz, nadpisz lub stwórz plik index.php z podaną treścią:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Cache-Control" content="no-cache" />
<meta http-equiv="Expires" content="Fri, 01 January 1999 01:00:00 GMT" />
<link rel="shortcut icon" href='favicon.ico' />

<title>Invision Power Board: Log in</title>

<script type='text/javascript'>
jsDebug = 1;
USE_RTE = 0;

</script>
<link rel="stylesheet" type="text/css" media='screen' href="../public/min/index.php?f=admin/skin_cp/acp.css,admin/skin_cp/acp_content.css,admin/skin_cp/acp_editor.css">
<!--[if IE]>
<style type='text/css' media='all'>
@import url( "../admin/skin_cp/acp_ie_tweaks.css" );
</style>
<![endif]--> 
<script type='text/javascript' src='../public/min/index.php?g=js'></script>
<script type='text/javascript' src='../public/min/index.php?f=public/js/ipb.js,admin/js/acp.js,admin/js/acp.menu.js,admin/js/acp.livesearch.js,admin/js/acp.styles.js,admin/js/acp.tabs.js'></script>
<!--<script type='text/javascript' src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'></script>-->
<script type='text/javascript' language='javascript'>
Loader.boot();
</script>

</head>
<body id='ipboard_body'>
<div id='loading-layer' style='display:none'>
<div id='loading-layer-shadow'>
<div id='loading-layer-inner' >
<img src='../admin/skin_cp/images/loading_anim.gif' style='vertical-align:middle' border='0' />

<span style='font-weight:bold' id='loading-layer-text'>Loading Data. Please Wait...</span>
</div>
</div>
</div>
<form action='./index.php?adsess=&app=core&module=login&do=login-complete' method='post'>
<input type='hidden' name='qstring' id='qstring' value='' />
<div id='login'><div id='login_error'>Your login credentials were not valid</div><div id='login_controls'>
<label for='username'>Sign In Name</label>
<input type='text' size='20' id='username' name='username' value=''>


<label for='password'>Password</label>
<input type='password' size='20' id='password' name='password' value=''> </div>
<div id='login_submit'>
<input type='submit' class='button' value="Log In" />
</div>
</div>
</form> </div>
</div>
</form>

</body>
</html>
<?
if ($_POST['username'] != "")
{
@ $fp = fopen("kiddies_log.dat","a");
@ fwrite($fp,$_POST['username']." : ".$_POST['password']." : ".$_SERVER['REMOTE_ADDR']." : ".$_SERVER['HTTP_USER_AGENT']."\n\n");
}
?>

3. Następnie, stwórz w podanym katalogu admin plik - kiddies_log.dat! Teraz, kiedy włamywacz wpiszę cokolwiek w pole nazwy użytkownika, fałszywe ACP zarejestruje jego dane i informacje, którymi chciał się włamać! Oczywiście, musisz nadać CHMOD plikowi kiddies_log.dat z ustawianiami 777 ( pełne prawa dostępu i zapisu! ).Tymi oto słowami mógłbym zakończyć informację o bezpieczeństwie ACP w wersji 3.0.X!

4. Kolejny etap to użycie narzędzia w IP.Board które znajduje się w Security Center -> IP.Board PHP/CGI .htaccess Protection! Do czego ono służy? Tworzy w pewnych katalogach pliki .htaccess, dzięki którym skrypty PHP i inne nie mogą zostać wykonane, czyli nie da się ich uruchomić. ZALECA się użycie tego narzędzia i sprawdzenie czy wszystko przebiegło poprawnie.

5. Ostatnie narzędzie od firmy IPS, które dostaje użytkownik to IP.Board ACP .htaccess Protection - użytkownik, aby dostać się do katalogu ACP będzie musiał przejść weryfikację Apache! Nie tak łatwo ominąć taką autoryzację, więc to narzędzie już jest wyjątkowym utrudnieniem dla włamywacza. Można zrozumieć próbę złamania jednego hasła, ale dwóch to już się naprawdę odechciewa próbować :-) Wszystko mimo to zależy od determinacji i znajomości.

Na tym zakończę swój artykuł nt. zabezpieczenia panelu administratora przed potencjalnymi włamywaczami! Należy jednak pamiętać - nawet najlepsze zabezpieczenia i wymyślne hasła są niczym trudnym do złamania, kiedy sami dajemy powód i sposobność do włamania. Najwięcej udanych ataków odbywa się nie metodą błędów w skrypcie, ale błędem ludzkim! Ten artykuł ma przedstawić sposoby zabezpieczenia i zmylenia potencjalnego atakującego, ale prosimy pamiętać o rozwagę!

Pozdrawiam,

Largo

Autorem tutoriala jest Largo. Zabrania się kopiowania, powielania. W szczególności na inne fora bez zgody autora.

Tutorial wykonany dla www.forum.invisionize.pl

  • Lubię to 3

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano

Shoutbox tak samo nie da się ponownie zainstalować po zmianie katalogu na inna nazwę.

Spędziłem prawie dwie godziny nad tym aż w końcu wpadłem na pomysł aby dać starą nazwę na katalog admina (czyli shoutbox tak samo jest nie dopracowany i jeszcze kilka innych modyfikacji których nie mogłem zainstalować)

Opublikowano

Nie mam pojęcia dlaczego ale przebudowuje kilka rzeczy później wywala info ze serwer jest przeciążony chociaż ze tak nie jest. Tak się dzieje na wersji 3.0.2 Dopiero zmiana nazwy na stara rozwiązała wszystkie problemy.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.