http.... |
Здравствуйте, гость ( Авторизация | Регистрация )
http.... |
24.07.2009, 12:33
Сообщение
#1
|
|
Репутация: 609 Группа: Участник Сообщений: 3450 Награды: 4 Регистрация: 10.06.2007 |
Как "замутить" автоматизированный подбор имён файлов к закрытому http-серверу? узнать какие файлы, в каких каталогах? поидее просто узнать пути к файлам... т.е. если найти путь к файлу, его можно спокойно скачать...
можно ли как-нибудь проверить? кроме ручного подбора известные файлы http://files.gsc-game.com/stk/ stk_mp.exe, STK_MOD_PRES.exe , mod_pres.rar, stalker-ua-audio-trailer.mp3, xr3da.rar Сообщение отредактировал Felix-rus53 - 24.07.2009, 12:34 |
 
|
|
|
|
24.07.2009, 12:35
Сообщение
#2
|
|
Total GAMEINATOR Репутация: 1070 Группа: Администратор Сообщений: 2170 Награды: 3 Регистрация: -- |
php стандартными функциями, но достаточно медленно, c/с++ побыстрее, но придётся подумать.
-------------------- Хочешь, я объясню тебе на пальцах... Средний видишь?
|
 
|
|
24.07.2009, 12:47
Сообщение
#3
|
|
Я такой разный, но все-таки я вместе Репутация: 497 Группа: Участник Сообщений: 1854 Награды: 2 Регистрация: 04.03.2009 |
Как "замутить" автоматизированный подбор имён файлов к закрытому http-серверу? узнать какие файлы, в каких каталогах? поидее просто узнать пути к файлам... т.е. если найти путь к файлу, его можно спокойно скачать... можно ли как-нибудь проверить? кроме ручного подбора известные файлы http://files.gsc-game.com/stk/ stk_mp.exe, STK_MOD_PRES.exe , mod_pres.rar, stalker-ua-audio-trailer.mp3, xr3da.rar Ну есть же всякие инспекторы сайтов и чужих ФТП только вся проблема в том, что все эти проги засветят на серваке твои IP, DNS и все такое - и тебя там забанят - ибо будет слишком много подозрительных запросов с твоего компа не вздумай это делать серьезные взломщики пишут для этого червей, которые распространяются по сети и отправляют запросы на сервак с любых подключенных к сети компов Хотя я сейчас подумал - пиши PHP скрипт, страничку с формой в которую будешь писать имя директории на сервере создавай новый сайт на чужом серваке - 110mb.com например - там и php есть и за бесплатно сиди на этом сайте и смотри, что скрипт тебе выдаст |
 
|
|
24.07.2009, 12:49
Сообщение
#4
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
только вся проблема в том, что все эти проги засветят на серваке твои IP, DNS и все такое - и тебя там забанят можно через прокси это делать, нужен только список довольно болшой -------------------- i know where you live
|
 
|
|
24.07.2009, 13:43
Сообщение
#5
|
|
Продвинутый геймер Репутация: 63 Группа: Участник Сообщений: 212 Награды: 1 Регистрация: 27.03.2007 |
Достали =/
Вот вам простейший сканнер. В dirs.txt должны быть записи типа: /admin/ /Hochu_bild_stk/ ... и т.д. , что позволит вам ваша больная фантазия. Остальное, думаю понятно... Код <?php
// SnX / 2009 @set_time_limit(0); $host="localhost"; $port=80; $timeout=2; $sDirs="dirs.txt"; if (!file_exists($sDirs)) die("Error! File $sDirs not found!"); $DirsData=file($sDirs); sort($DirsData); for($i=0; $i<count($DirsData); $i++){ $fp=fsockopen($host, $port, $errno, $errstr, $timeout); fwrite($fp, "GET /".trim($DirsData[$i])." HTTP/1.0\r\nHost: ".$host."\r\n\r\n"); $Result=fgets($fp,128); if (!preg_match("/\b404 Not Found\b/i", $Result)) print "<b>".$DirsData[$i]."</b> -- <font color=\"#2DB84D\">".$Result."</font><br>"; fclose($fp); } ?> Сообщение отредактировал Smanxx1 - 24.07.2009, 13:44 |
 
|
|
24.07.2009, 14:22
Сообщение
#6
|
|
Новичок Репутация: 2 Группа: Участник Сообщений: 9 Регистрация: 23.07.2009 |
поражаюсь идиотизму некоторых пользователей. Вместо того, чтобы после обнаружения билда, втихаря проверять еще директории сервера на наличие интересных файлов, они кидают ссылки на этот файл, обсуждают, публично серфят сервак , так еще и темы создают как подобрать директории!! полный ппц. Понятно, что GSC видя такой расклад, все давно потерли уже.
|
 
|
|
24.07.2009, 16:01
Сообщение
#7
|
|
Продвинутый геймер Репутация: 38 Группа: Участник Сообщений: 278 Награды: 3 Регистрация: 31.08.2008 |
поражаюсь идиотизму некоторых пользователей. Вместо того, чтобы после обнаружения билда, втихаря проверять еще директории сервера на наличие интересных файлов, они кидают ссылки на этот файл, обсуждают, публично серфят сервак , так еще и темы создают как подобрать директории!! полный ппц. Понятно, что GSC видя такой расклад, все давно потерли уже. Да для них это,как то не очень важно. -------------------- Нет знания,котрое не дает силу.(M-K)
|
 
|
|
24.07.2009, 17:50
Сообщение
#8
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
Код #include <Winsock2.h> #include <iostream> #include <conio.h> #include "locale.h" typedef void* Socket_t; typedef void* Host_t; WSADATA g_pWSAData; bool Sockets_Init() { WORD wVersion = MAKEWORD( 2, 2 ); int nRet = WSAStartup( wVersion, &g_pWSAData ); return nRet ? 1 : 0; } void Sockets_Shutdown() { WSACleanup(); } Socket_t CreateSocket() { return (Socket_t) socket( AF_INET, SOCK_STREAM, IPPROTO_TCP ); } void CloseSocket( Socket_t Socket ) { if( !Socket ) { return; } SOCKET Sock = (SOCKET)Socket; closesocket( Sock ); } Host_t GetHostByName( const char* pName ) { char szName[255]; strcpy( szName, pName ); if ( isalpha( szName[0] ) ) { if ( szName[strlen( szName )-1] == '\n') szName[strlen( szName )-1] = '\0'; return (Host_t) gethostbyname( szName ); } else { return 0; } } Host_t GetHostByAddress( const char* pAddress ) { char szName[255]; strcpy( szName, pAddress ); if ( !isalpha( szName[0] ) ) { unsigned int addr = inet_addr( szName ); return (Host_t) gethostbyaddr( (char* )&addr, 4, AF_INET ); } else { return 0; } } int GetHostAddr( Host_t Host, char* pAddress ) { if( !pAddress ) { return 0; } hostent* ht = (hostent*)Host; strcpy( pAddress, inet_ntoa( *(in_addr*)ht->h_addr ) ); return strlen( pAddress ); } int main() { char szAddress[255]; Sockets_Init(); Host_t GSC = GetHostByName( "files.gsc-game.com" ); if( !GSC ) { return 0; } GetHostAddr( GSC, szAddress ); setlocale( LC_ALL, ".1251" ); std::cout << "IP-адрес пысов: " << szAddress; _getch(); Sockets_Shutdown(); } -------------------- i know where you live
|
 
|
|
24.07.2009, 19:19
Сообщение
#9
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
whoops!
Цитата 403 Forbidden -------------------- i know where you live
|
 
|
|
24.07.2009, 19:29
Сообщение
#10
|
|
Почти Мастер Репутация: 317 Группа: Участник Сообщений: 1154 Награды: 1 Регистрация: 26.04.2008 |
centrino
А посему, скрипт от Smanxx1 пригодится в хозяйстве. -------------------- |
 
|
|
24.07.2009, 19:31
Сообщение
#11
|
|
Loading... Репутация: 1644 Группа: Участник Сообщений: 5049 Награды: 5 Регистрация: 20.02.2009 |
Дык ж доступа к
|
 
|
|
24.07.2009, 20:06
Сообщение
#12
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
Дык ж доступа к верно скрипт от Smanxx1 пригодится в хозяйстве так интереснее #include <Winsock2.h> #include <iostream> #include <conio.h> #include "locale.h" typedef void* Socket_t; typedef void* Host_t; WSADATA g_pWSAData; bool Sockets_Init() { WORD wVersion = MAKEWORD( 2, 2 ); int nRet = WSAStartup( wVersion, &g_pWSAData ); return nRet ? 1 : 0; } void Sockets_Shutdown() { WSACleanup(); } Socket_t CreateSocket() { return (Socket_t) socket( AF_INET, SOCK_STREAM, IPPROTO_TCP ); } void CloseSocket( Socket_t Socket ) { if( !Socket ) { return; } SOCKET Sock = (SOCKET)Socket; closesocket( Sock ); } Host_t GetHostByName( const char* pName ) { char szName[255]; strcpy( szName, pName ); if ( isalpha( szName[0] ) ) { if ( szName[strlen( szName )-1] == '\n') szName[strlen( szName )-1] = '\0'; return (Host_t) gethostbyname( szName ); } else { return 0; } } Host_t GetHostByAddress( const char* pAddress ) { char szName[255]; strcpy( szName, pAddress ); if ( !isalpha( szName[0] ) ) { unsigned int addr = inet_addr( szName ); return (Host_t) gethostbyaddr( (char* )&addr, 4, AF_INET ); } else { return 0; } } int GetHostAddr( Host_t Host, char* pAddress ) { if( (!pAddress) || (!Host) ) { return 0; } hostent* ht = (hostent*)Host; strcpy( pAddress, inet_ntoa( *(in_addr*)ht->h_addr ) ); return strlen( pAddress ); } unsigned int GetHostAddr( Host_t Host ) { if( !Host ) { return 0; } hostent* ht = (hostent*)Host; return inet_addr( ht->h_addr ); } bool ConnectToServer( Socket_t Socket, unsigned int uAddress, int nPort ) { sockaddr_in addr; addr.sin_family = AF_INET; addr.sin_addr.s_addr = uAddress; addr.sin_port = htons( nPort ); if( connect( (SOCKET)Socket, (SOCKADDR*) &addr, sizeof( addr ) ) == SOCKET_ERROR ) { return 0; } return 1; } bool ConnectToServer( Socket_t Socket, const char* pAddress, int nPort ) { return ConnectToServer( Socket, inet_addr( pAddress ), nPort ); } int main() { char szAddress[255]; char buf[1024]; Sockets_Init(); Socket_t Socket = CreateSocket(); Host_t Host = GetHostByName( "files.gsc-game.ru" ); GetHostAddr( Host, szAddress ); ConnectToServer( Socket, szAddress, 80 ); strcpy( buf, "HEAD / HTTP/1.1\xD\xAHost: files.gsc-game.ru:80\xD\xAUser-Agent: bildanutiy\xD\xA\xD\xA" ); send( (SOCKET)Socket, buf, 1024, 0 ); recv( (SOCKET)Socket, buf, 1024, 0 ); std::cout << buf; _getch(); CloseSocket( Socket ); Sockets_Shutdown(); } а чо у них на серваке время не киевское? оО -------------------- i know where you live
|
 
|
|
24.07.2009, 20:24
Сообщение
#13
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
-------------------- i know where you live
|
 
|
|
24.07.2009, 22:34
Сообщение
#14
|
|
Репутация: 609 Группа: Участник Сообщений: 3450 Награды: 4 Регистрация: 10.06.2007 |
Файлы с
серверы разные. ip xfiles.gsc-game.com - ип 206.51.237.218 files.gsc-game.com - ип 89.108.86.183 хз, что это даст. так просто. п.с. где хочу, там и лажу, что хочу, то и качаю. ничего не ломаю и не порчу. Сообщение отредактировал Felix-rus53 - 24.07.2009, 22:36 |
 
|
|
24.07.2009, 23:21
Сообщение
#15
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
п.с. где хочу, там и лажу, что хочу, то и качаю. ничего не ломаю и не порчу. I'm in this computer, right. So I'm looking around, looking around, you know, throwing commands at it, I don't know where it is or what it does or anything. It's like, it's like choice, it's just beautiful, okay. (с) опять-таки -------------------- i know where you live
|
 
|
|
25.07.2009, 00:30
Сообщение
#16
|
|
Игроман Репутация: 223 Группа: Участник Сообщений: 924 Награды: 2 Регистрация: 14.01.2008 |
Их сервак построен на староватой версии nginx 0.7.39 под управления чего то иникс-подобного,
надо искать уязвимости, ибо их версия достаточно старая -------------------- |
 
|
|
25.07.2009, 00:57
Сообщение
#17
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
-------------------- i know where you live
|
 
|
|
25.07.2009, 02:17
Сообщение
#18
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
sockets.h Код #ifndef SOCKETS_H #define SOCKETS_H // Type definitions typedef void* Socket_t; typedef void* Host_t; // Functions bool Sockets_Init(); void Sockets_Shutdown(); Socket_t Sockets_CreateSocket(); void Sockets_CloseSocket( Socket_t Socket ); Host_t Sockets_GetHostByName( const char* pName ); Host_t Sockets_GetHostByAddress( const char* pAddress ); int Sockets_GetHostAddr( Host_t Host, char* pAddress ); unsigned long Sockets_GetHostAddr( Host_t Host ); bool Sockets_ConnectToServer( Socket_t Socket, unsigned int uAddress, int nPort ); bool Sockets_ConnectToServer( Socket_t Socket, const char* pAddress, int nPort ); bool Sockets_Send( Socket_t Socket, const char* pBuffer, int nSize ); int Sockets_Receive( Socket_t Socket, char* pBuffer, int nSize ); #endif sockets.cpp Код #include <Winsock2.h> #include "Sockets.h" WSADATA g_pWSAData; bool Sockets_Init() { WORD wVersion = MAKEWORD( 2, 2 ); int nRet = WSAStartup( wVersion, &g_pWSAData ); return nRet ? 1 : 0; } void Sockets_Shutdown() { WSACleanup(); } Socket_t Sockets_CreateSocket() { return (Socket_t) socket( AF_INET, SOCK_STREAM, IPPROTO_TCP ); } void Sockets_CloseSocket( Socket_t Socket ) { if( !Socket ) { return; } SOCKET Sock = (SOCKET)Socket; closesocket( Sock ); } Host_t Sockets_GetHostByName( const char* pName ) { char szName[255]; strcpy( szName, pName ); if ( isalpha( szName[0] ) ) { if ( szName[strlen( szName )-1] == '\n') szName[strlen( szName )-1] = '\0'; return (Host_t) gethostbyname( szName ); } else { return 0; } } Host_t Sockets_GetHostByAddress( const char* pAddress ) { char szName[255]; strcpy( szName, pAddress ); if ( !isalpha( szName[0] ) ) { unsigned int addr = inet_addr( szName ); return (Host_t) gethostbyaddr( (char* )&addr, 4, AF_INET ); } else { return 0; } } int Sockets_GetHostAddr( Host_t Host, char* pAddress ) { if( (!pAddress) || (!Host) ) { return 0; } hostent* ht = (hostent*)Host; strcpy( pAddress, inet_ntoa( *(in_addr*)ht->h_addr ) ); return strlen( pAddress ); } unsigned long Sockets_GetHostAddr( Host_t Host ) { if( !Host ) { return 0; } hostent* ht = (hostent*)Host; unsigned long uAddr = inet_addr( inet_ntoa( *(in_addr*)ht->h_addr ) ); } bool Sockets_ConnectToServer( Socket_t Socket, unsigned int uAddress, int nPort ) { sockaddr_in addr; addr.sin_family = AF_INET; addr.sin_addr.s_addr = uAddress; addr.sin_port = htons( nPort ); if( connect( (SOCKET)Socket, (SOCKADDR*) &addr, sizeof( addr ) ) == SOCKET_ERROR ) { return 0; } return 1; } bool Sockets_ConnectToServer( Socket_t Socket, const char* pAddress, int nPort ) { return Sockets_ConnectToServer( Socket, inet_addr( pAddress ), nPort ); } bool Sockets_Send( Socket_t Socket, const char* pBuffer, int nSize ) { if( !pBuffer ) { return 0; } int nRet = send( (SOCKET)Socket, pBuffer, nSize, 0 ); return nRet ? 1 : 0; } int Sockets_Receive( Socket_t Socket, char* pBuffer, int nSize ) { if( !pBuffer ) { return 0; } int nRet = recv( (SOCKET)Socket, pBuffer, nSize, 0 ); return nRet; } server.cpp Код #include <memory.h> #include "Server.h" CServer::CServer() { _socket = 0; _host = 0; } CServer::CServer( std::string address, int port ) { Init( address, port ); } CServer::~CServer() { Shutdown(); } void CServer::Init( std::string &address, int port ) { _socket = Sockets_CreateSocket(); if( !_socket ) { throw std::exception( "Unable to create socket" ); } _host = Sockets_GetHostByAddress( address.c_str() ); if( !_host ) { _host = Sockets_GetHostByName( address.c_str() ); } if( !_host ) { std::string errorMsg = std::string( "The host address " ) + address + std::string( " not found or does not exist" ); throw std::exception( errorMsg.c_str() ); } unsigned long ipAddress = Sockets_GetHostAddr( _host ); if( !ipAddress ) { throw std::exception( "Invalid host address" ); } bool result = Sockets_ConnectToServer( _socket, ipAddress, port ); if( !result ) { std::string errorMsg = std::string( "Unable to create connection with " ) + address; throw std::exception( errorMsg.c_str() ); } } void CServer::Shutdown() { if( _socket ) Sockets_CloseSocket( _socket ); _host = 0; _socket = 0; } void CServer::Send( std::string message ) { bool result = Sockets_Send( _socket, message.c_str(), message.length() ); if( !result ) { throw std::exception( "Cannot send message" ); } } void CServer::Receive( std::string &message ) { char buffer[1024]; memset( buffer, 0, sizeof( buffer ) ); int result = Sockets_Receive( _socket, buffer, 1024 ); if( result == -1 ) { throw std::exception( "Cannot receive message" ); } message = buffer; } server.h Код #ifndef SERVER_H #define SERVER_H #include <string> #include <exception> #include "Sockets.h" class CServer { public: // constructions CServer(); CServer( std::string address, int port ); virtual ~CServer(); // Public Methods void Init( std::string &address, int port ); void Shutdown(); void Send( std::string message ); void Receive( std::string &message ); private: // Private members Socket_t _socket; Host_t _host; }; #endif main.cpp Код #include <iostream> #include <conio.h> #include "Server.h" int main() { try { Sockets_Init(); std::string message; CServer gameinator( "gameru.net", 80 ); gameinator.Send( "HEAD /forum/ HTTP/1.1\xD\xAHost: gameru.net:80\xD\xAUser-Agent: bildanutiy\xD\xA\xD\xA" ); gameinator.Receive( message ); std::cout << message.c_str(); Sockets_Shutdown(); _getch(); } catch( std::exception &e ) { std::cout << e.what(); _getch(); } return 0; } Сообщение отредактировал centrino - 25.07.2009, 02:39 -------------------- i know where you live
|
 
|
|
25.07.2009, 02:39
Сообщение
#19
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
-
Сообщение отредактировал centrino - 25.07.2009, 02:40 -------------------- i know where you live
|
 
|
|
25.07.2009, 09:56
Сообщение
#20
|
|
Продвинутый геймер Репутация: 63 Группа: Участник Сообщений: 212 Награды: 1 Регистрация: 27.03.2007 |
Цитата Их сервак построен на староватой версии nginx 0.7.39 под управления чего то иникс-подобного, надо искать уязвимости, ибо их версия достаточно старая Вобще ты немножко бред написал. Веб уязвимости там негде искать, а для использования сплойтов для ОС или сторонних программ, нужно как минимум иметь хоть какой-то доступ к серву. centrino А толку? Перебор папок ты не написал еще. |
 
|
|
Текстовая версия | Сейчас: 04.05.2024, 05:40 |