![]() |
Предыдущая часть
Так же много информации в себе хранят файлы проектов IDE: IDE (интегрированные среды разработки) используется многими программистами, для хранения настройки проектов, куча дополнительной информации в их собственных файлах. Если такая папка лежит на веб-сервере — это уже другой источник информации о этом веб-сервере. Например, возьмем приложения JetBrains IDEs:IntelliJ IDEA, WebStorm, PHPStorm, RubyMine Каждый проект, в каждой продукции JetBrains, создает собственные скрытые директории - .idea/. Эти директории содержат всю информацию о нынешних проектах, их файлов, другие директории и IDE настройки. https://forum.antichat.xyz/attachmen...42a508b569.png Один из этих файлов, является очень важным с точки зрения безопасности — workspace.xml. Этот файл содержит много ценной информации, которая позволяет перечислить все файлы и папки приложения, информацию о системе контроля версии и многое другое. Давайте рассмотрим, что именно хранит этот файл: XML: Код:
Если присмотреться к каждому component’у узла, можно найти информацию про использование системы контроля версии, например: XML: Код:
XML: Код:
XML: Код:
XML: Код:
XML: Код:
XML: Код:
Как вы можете заметить, это очень интересный кладезь информации. Я предлагаю вам скачать любую продукцию JetBrains IDE (не реклама ), далее создать проект и добавить пару папок и файлов, после этого попробуйте управлять Git или SVN. Так же создайте простую базу данных, и управляйте ею при помощи Database Manager. После всего этого, в .idea/ вы найдете очень много интересной информации. NetBeans IDE NetBeans другая популярная и бесплатная IDE для JAVA, C/C++, PHP, HTML5 и JavaScript разработки. NetBeans создает свою собственную скрытую папку в папке проекты, где содержит всю нужную информацию и настройки — nbprosect/ (стоит отметить, что папка имеет схожую функцию со скрытыми папками продукции JetBrains IDEs) В скрытой папке, вы сможете найти project.xml. Данный файл является отличным стартом для постижения конфигурации NetBeans проекта. https://forum.antichat.xyz/attachmen...254619d3e0.png Способ изучения информации в скрытой папке очень похож с раннее описанными методами. Поэтому, я не буду детально на этом останавливаться. Разные файлы конфигурации Спецификация файлов конфигурации NodeJS/JavaScript Если вы сталкивались с современными постройками JavaScript проектов, скорее всего вы были удивлены, насколько много файлов имеют *.json и .rc* в папке/папках проекта. В папках проекта храниться много файлов конфигурации которые похожи на эти, и содержать в себе много информации о использованных библиотеках. Некоторые директории не доступны прямо из веб-браузера или вообще невозможно их обнаружить инструментами для обнаружения скрытых папок и файлов, но все же, некоторые из этих файлов можно встретить повсюду. Примерами являются файлы конфигурации npm (package.json, package-lock.json), которые содержат все зависимости приложения. Так же примером являются файлы linters для JavaScript, таких менеджеров как ESlint, JShint или Bower - bower.json. Давайте взглянем на простой bower.json файл, который содержит конфигурации для Bower и имеет список пакетов использованных в веб-приложении (для фронтенда): JSON: Код:
{Если вы сможете скачать package.json с сервера, то этот простой метод по идентифицированию любых потенциальных npm пакетов использованных в приложении вам поможет:
Код: Код:
audited 9307 packages in 8.417s
Код: Код:
=== npm audit security report === Вот к примеру простой файл package.json демонстрирует что, возможно в проекте используется база данных MySQL и несколько клиент-серверов связаны друг с другом при помощи WebSockets: JSON: Код:
{Также есть файлы вроде .bowerrc, .eslintrc, .jshintrc и похожие. Даже если они не содержат много “чувствительной” информации, всегда есть шанс, что вы сможете найти описания об архитектуре веб-приложения, о использованных библиотеках или/и фреймворков. Всегда нужно заглянуть в файл, ведь мало что могут содержать в себе комментарии... Вывод: Под плохой защитой, скрытые файлы и папки на веб-сервере дают хакеру много полезной и ценной информации, которую он сможет использовать для атаки на тот же веб-сервер. Поэтому, всегда удаляйте скрытые папки от IDE, Git’a и прочих приложений перед загрузкой проекта на веб-сервер. Спасибо за внимание! |
Цитата:
|
| Время: 13:25 |