Определение используемой БД из запроса http - PullRequest
0 голосов
/ 23 октября 2009

Существует ли простой способ определить, какая база данных используется за веб-сайтом по внешнему HTTP-запросу? то есть я делаю HTTP-запрос, получаю обратно все данные, которые будут поступать с веб-сервера - могу ли я проверить что-либо из этого и надежно определить, какая БД используется? Я не думаю, но решил, что задам эту группу.

Ответы [ 3 ]

10 голосов
/ 23 октября 2009

Нет. Тот же ответ может прийти из статического файла, базы данных SQL или марсианского телепата.

2 голосов
/ 23 октября 2009

Нет и не зря. Если бы это было так, это была бы дыра в безопасности. Если это не часть функциональности приложения.

0 голосов
/ 27 октября 2009

Для большинства веб-сайтов ответом является нет , однако вы можете найти дыры в безопасности, которые раскрывают эту информацию. Например, эту информацию можно получить, если сайт не закодирован против атак с использованием SQL-инъекций. Например, попробуйте ввести следующее как ваше имя пользователя:

'; select version();

В системе общего хостинга у них часто нет брандмауэра, защищающего базу данных от внешних подключений.

Попробуйте следующее:

telnet localhost 3306
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
5
5.0.51a—Bjb-W

Это говорит о том, что сервер работает под управлением MySQL версии 5.0.51a. MSSQL и Sybase также идентифицируют номер своей версии, прежде чем клиент попытается войти в систему.

Наверное, самый простой способ - просто спросить веб-мастера. Если вы не хакер, а сайт не является банком, вам, скорее всего, сообщат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...