jSQL Injection is a multipurpose penetration testing tool. Its main function is to find and exploit SQL-injection vulnerabilities. It is also able to:
- explore databases from remote host
- search for admin pages,
- read files from remote host using injection,
- create a web shell to remote host and open a terminal
- create a SQL shell to remote host and open a terminal
- upload a file to host
- brute-force hashes
- encode or decode a string
- test multiple URLs for SQL injection
To detect and exploit SQL injections, I usually prefer sqlmap . It is a command-line utility, it can do a lot of things, it uses all possible SQL injection methods, tries to bypass server protection, can create shells and much more. It is also cross-platform, reliable and very effective. Since sqlmap is extremely powerful and flexible, for the command-line program it means a huge number of different options. For beginners this may seem too complicated.
JSQL Injection has an excellent graphical interface. The program is written in Java, it is cross-platform and very undemanding to resources. By the way, the executable file is only 2.14 megabytes.
But start in order - with the search for candidates for hacking. It will not be superfluous to recall that hacking is a criminal offense. Therefore, do not do anything that violates the law. Ideal (from the point of view of legality) is the use for training a vulnerable script on or one of the specialized environments. Please, consider the articles:
1. Search for sites vulnerable to SQL injection
One of the ways to find vulnerable web sites is to use Google dorks. This table is borrowed from the site blackmoreops.com:
Google dorks | Google dorks | Google dorks |
---|---|---|
inurl:item_id= | inurl:review.php?id= | inurl:hosting_info.php?id= |
inurl:newsid= | inurl:iniziativa.php?in= | inurl:gallery.php?id= |
inurl:trainers.php?id= | inurl:curriculum.php?id= | inurl:rub.php?idr= |
inurl:news-full.php?id= | inurl:labels.php?id= | inurl:view_faq.php?id= |
inurl:news_display.php?getid= | inurl:story.php?id= | inurl:artikelinfo.php?id= |
inurl:index2.php?option= | inurl:look.php?ID= | inurl:detail.php?ID= |
inurl:readnews.php?id= | inurl:newsone.php?id= | inurl:index.php?= |
inurl:top10.php?cat= | inurl:aboutbook.php?id= | inurl:profile_view.php?id= |
inurl:newsone.php?id= | inurl:material.php?id= | inurl:category.php?id= |
inurl:event.php?id= | inurl:opinions.php?id= | inurl:publications.php?id= |
inurl:product-item.php?id= | inurl:announce.php?id= | inurl:fellows.php?id= |
inurl:sql.php?id= | inurl:rub.php?idr= | inurl:downloads_info.php?id= |
inurl:index.php?catid= | inurl:galeri_info.php?l= | inurl:prod_info.php?id= |
inurl:news.php?catid= | inurl:tekst.php?idt= | inurl:shop.php?do=part&id= |
inurl:index.php?id= | inurl:newscat.php?id= | inurl:productinfo.php?id= |
inurl:news.php?id= | inurl:newsticker_info.php?idn= | inurl:collectionitem.php?id= |
inurl:index.php?id= | inurl:rubrika.php?idr= | inurl:band_info.php?id= |
inurl:trainers.php?id= | inurl:rubp.php?idr= | inurl:product.php?id= |
inurl:buy.php?category= | inurl:offer.php?idf= | inurl:releases.php?id= |
inurl:article.php?ID= | inurl:art.php?idm= | inurl:ray.php?id= |
inurl:play_old.php?id= | inurl:title.php?id= | inurl:produit.php?id= |
inurl:declaration_more.php?decl_id= | inurl:news_view.php?id= | inurl:pop.php?id= |
inurl:pageid= | inurl:select_biblio.php?id= | inurl:shopping.php?id= |
inurl:games.php?id= | inurl:humor.php?id= | inurl:productdetail.php?id= |
inurl:page.php?file= | inurl:aboutbook.php?id= | inurl:post.php?id= |
inurl:newsDetail.php?id= | inurl:ogl_inet.php?ogl_id= | inurl:viewshowdetail.php?id= |
inurl:gallery.php?id= | inurl:fiche_spectacle.php?id= | inurl:clubpage.php?id= |
inurl:article.php?id= | inurl:communique_detail.php?id= | inurl:memberInfo.php?id= |
inurl:show.php?id= | inurl:sem.php3?id= | inurl:section.php?id= |
inurl:staff_id= | inurl:kategorie.php4?id= | inurl:theme.php?id= |
inurl:newsitem.php?num= | inurl:news.php?id= | inurl:page.php?id= |
inurl:readnews.php?id= | inurl:index.php?id= | inurl:shredder-categories.php?id= |
inurl:top10.php?cat= | inurl:faq2.php?id= | inurl:tradeCategory.php?id= |
inurl:historialeer.php?num= | inurl:show_an.php?id= | inurl:product_ranges_view.php?ID= |
inurl:reagir.php?num= | inurl:preview.php?id= | inurl:shop_category.php?id= |
inurl:Stray-Questions-View.php?num= | inurl:loadpsb.php?id= | inurl:transcript.php?id= |
inurl:forum_bds.php?num= | inurl:opinions.php?id= | inurl:channel_id= |
inurl:game.php?id= | inurl:spr.php?id= | inurl:aboutbook.php?id= |
inurl:view_product.php?id= | inurl:pages.php?id= | inurl:preview.php?id= |
inurl:newsone.php?id= | inurl:announce.php?id= | inurl:loadpsb.php?id= |
inurl:sw_comment.php?id= | inurl:clanek.php4?id= | inurl:pages.php?id= |
inurl:news.php?id= | inurl:participant.php?id= | |
inurl:avd_start.php?avd= | inurl:download.php?id= | |
inurl:event.php?id= | inurl:main.php?id= | |
inurl:product-item.php?id= | inurl:review.php?id= | |
inurl:sql.php?id= | inurl:chappies.php?id= | |
inurl:material.php?id= | inurl:read.php?id= | |
inurl:clanek.php4?id= | inurl:prod_detail.php?id= | |
inurl:announce.php?id= | inurl:viewphoto.php?id= | |
inurl:chappies.php?id= | inurl:article.php?id= | |
inurl:read.php?id= | inurl:person.php?id= | |
inurl:viewapp.php?id= | inurl:productinfo.php?id= | |
inurl:viewphoto.php?id= | inurl:showimg.php?id= | |
inurl:rub.php?idr= | inurl:view.php?id= | |
inurl:galeri_info.php?l= | inurl:website.php?id= |
Open sites one by one from the search results and try to add a quote to a variable in the query string. For example, the site address:
Http://maral-mt.ru/maintextile.php?cat=1
Http://maral-mt.ru/maintextile.php?cat=1"
If you receive any SQL error message, then the site is likely to be vulnerable to SQL injection.
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near """ at line 1
In addition, often vulnerable sites in response to a quote character, do not display anything, or the behavior of the site gives grounds for assuming insufficient data filtering.
It is definitely not worth looking for SQL injection in popular CMSs. Even if they are found there, they are almost always difficult to exploit. If you read this guide, then it is for sure (yet) not your level. Popular CMSs can become vulnerable due to vulnerable plugins (especially self-written ones). However, again, this is not our level yet.
2. Installing jSQL Injection
jSQL Injection is already preinstalled in Kali Linux. But the version there could be outdated is already available.
To check the latest release number visit the release page: https://github.com/ron190/jsql-injection/releases
To launch pre-installed jSQL Injection type in your console:
If you need, you can download the latest release:
Wget https://github.com/`curl -s https://github.com/ron190/jsql-injection/releases | grep -E -o "/ron190/jsql-injection/releases/download/v{1,2}.{1,2}/jsql-injection-v{1,2}.{1,2}.jar" | head -n 1`
Once the file is downloaded, start the tool like this:
Java -jar ./jsql-injection-v*.jar
The main window of the program looks like this:
By the way, this is one of those programs for pentesting that work fine in Windows.
To run in Windows, download the latest version from the official website: https://github.com/ron190/jsql-injection/releases
Run the downloaded file with a double click (you need to have a Java virtual machine).
3. Scanning a web site for SQL injection with jSQL
Working with the program is extremely simple. Just enter the address of the site and press ENTER.
The following screenshot shows that the site is vulnerable to three types of SQL injections at once.
We already got names of available databases.
Click on a database to explore its tables. You can see the contents of each table. Click on a table; wait for a list of columns appears:
Select columns of interest:
Click the table name by right button of your mouse and select ‘Load ’:
The content of the table will appear:
Usually, tables with named administrator , users are the most interesting, because the can contain credentials.
If you are lucky and you found the administrator"s credentials, it is still not enough. We still need to find an admin page where to enter these credentials.
4. Searching for admin pages with jSQL Injection
To do this, go to the next tab. Here we are met by a list of possible addresses. You can select one or more pages to check:
Convenience is that you do not need to use other programs.
Unfortunately, negligent programmers, who store passwords in clear test, are not very numerous. Quite often in the password line we see something like
This is a hash. You can decipher it with brute force. And … jSQL Injection has a built-in brute-force.
5. Brute-forcing hashes using jSQL Injection
Undoubted convenience is that you do not need to look for other programs. There is support for many of the most popular hashes.
This is not the best solution. To brute-force on maximum speed use Hashcat .
However, of course, when there is no other program at hand or there is no time to learn Hashcat, jSQL Injection with the built-in brute force function will be very useful.
There are settings: you can specify what characters are in the password, the length range of the password.
6. Operations with files after detection of SQL injections
In addition to database operations - reading and modifying them, in the case of detecting SQL injections, the following file operations are possible:
- reading files on the server
And all this is implemented in jSQL Injection!
There are restrictions - the SQL server must have enough privileges. Good system administrators disables it option and access to the file system cannot be obtained.
The presence of file privileges is easy enough to verify. Go to one of the tabs (reading files, creating a shell, uploading a new file) and try one of the specified operations.
Still very important remark - we need to know the exact absolute path to the file with which we will work - otherwise it will not work.
Look at the following screenshot:
Any response to a file operation is answered by us: No FILE privilege , and nothing can be done about it.
If instead you have another error:
Problem writing into
This means that you have incorrectly specified the absolute path to which the file should be written.
In order to assume the absolute path, you need, at a minimum, to know the operating system on which the server is running. To do this, switch to the Network tab.
Such a record (Win64 string) gives us reason to assume that we are dealing with Windows OS:
Keep-Alive: timeout=5, max=99 Server: Apache/2.4.17 (Win64) PHP/7.0.0RC6 Connection: Keep-Alive Method: HTTP/1.1 200 OK Content-Length: 353 Date: Fri, 11 Dec 2015 11:48:31 GMT X-Powered-By: PHP/7.0.0RC6 Content-Type: text/html; charset=UTF-8
Here we have some kind of Unix (*BSD, Linux):
Transfer-Encoding: chunked Date: Fri, 11 Dec 2015 11:57:02 GMT Method: HTTP/1.1 200 OK Keep-Alive: timeout=3, max=100 Connection: keep-alive Content-Type: text/html X-Powered-By: PHP/5.3.29 Server: Apache/2.2.31 (Unix)
And here we have CentOS:
Method: HTTP/1.1 200 OK Expires: Thu, 19 Nov 1981 08:52:00 GMT Set-Cookie: PHPSESSID=9p60gtunrv7g41iurr814h9rd0; path=/ Connection: keep-alive X-Cache-Lookup: MISS from t1.hoster.ru:6666 Server: Apache/2.2.15 (CentOS) X-Powered-By: PHP/5.4.37 X-Cache: MISS from t1.hoster.ru Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Date: Fri, 11 Dec 2015 12:08:54 GMT Transfer-Encoding: chunked Content-Type: text/html; charset=WINDOWS-1251
In Windows, the typical folder for sites is C:\Server\data\htdocs\ . But, in fact, if someone thought of making a server on Windows, then, very likely, this person has not heard anything about file permissions. Therefore, the attempt starts directly from the C:/Windows/ folder:
As you can see, everything went fine from the first time.
But here I myself have doubts about the jSQL Injection shells themselves. If there are file privileges, then you can download anything with the web interface.
7. Mass check of sites on SQL-injection
And even this function is in jSQL Injection. Everything is extremely simple - insert a list of sites (you can import from a file), select the ones you want to check and click the button to start the operation.
Conclusion on jSQL Injection
jSQL Injection is a good, powerful tool for searching and post-exploiting vulnerable to SQL injection web sites. Its undoubted advantages: ease of use, built-in related functions. jSQL Injection can become a novice"s best friend when analyzing websites.
Like all tools with a graphical interface, it cannot be automated in scripts. Nevertheless, some automation is possible in this program as well, thanks to the built-in function of mass web site scanning.
The jSQL Injection program is much easier to use than sqlmap . But sqlmap supports more types of SQL injection, has options for working with file-based firewalls and some other functions.
Outcome: jSQL Injection is the best friend of a beginner hacker.
Любой поиск уязвимостей на веб-ресурсах начинается с разведки и сбора информации.
Разведка может быть как активной - брутфорс файлов и директорий сайта, запуск сканеров уязвимостей, ручной просмотр сайта, так и пассивной - поиск информации в разных поисковых системах. Иногда бывает так, что уязвимость становится известна еще до открытия первой страницы сайта.
Как такое возможно?
Поисковые роботы, безостановочно бродящие по просторам интернета, помимо информации, полезной обычному пользователю, часто фиксируют то, что может быть использовано злоумышленниками при атаке на веб-ресурс. Например, ошибки скриптов и файлы с чувствительной информацией (начиная от конфигурационных файлов и логов, заканчивая файлами с аутентификационными данными и бэкапами баз данных).
С точки зрения поискового робота сообщение об ошибке выполнения sql-запроса - это обычный текст, неотделимый, например, от описания товаров на странице. Если вдруг поисковый робот наткнулся на файл с расширением.sql, который почему-то оказался в рабочей папке сайта, то он будет воспринят как часть содержимого сайта и так же будет проиндексирован (включая, возможно, указанные в нём пароли).
Подобную информацию можно найти, зная устойчивые, часто уникальные, ключевые слова, которые помогают отделить «уязвимые страницы» от страниц, не содержащих уязвимости.
Огромная база специальных запросов с использованием ключевых слов (так называемых дорков) существует на exploit-db.com и известна под названием Google Hack Database.
Почему google?
Дорки ориентированы в первую очередь на google по двум причинам:
− наиболее гибкий синтаксис ключевых слов (приведен в Таблице 1) и специальных символов (приведен в Таблице 2);
− индекс google всё же более полный нежели у других поисковых систем;
Таблица 1 – Основные ключевые слова google
Ключевое слово
|
Смысл
|
Пример
|
site |
Поиск только на указанном сайте. Учитывает только url |
site:somesite.ru - найдет все страницы по данному домену и поддоменам |
inurl |
Поиск по словам, присутствующим в uri. В отличие от кл. слова “site”, ищет совпадения после имени сайта |
inurl:news - найдет все страницы, где в uri встретится данное слово |
intext |
Поиск в теле страницы |
intext:”пробки” - полностью аналогично обычному запросу “пробки” |
intitle |
Поиск в заголовке страницы. Текст, заключенный между тэгами |
intitle:”index of” - найдет все страницы с листингом директории |
ext |
Поиск страниц с указанным расширением |
ext:pdf - найдет все pdf-файлы |
filetype |
В настоящее время полностью аналогично кл. слову “ext” |
filetype:pdf - аналогично |
related |
Поиск сайтов со схожей тематикой |
related:google.ru - покажет свои аналоги |
link |
Поиск сайтов, ссылающихся на данный |
link:somesite.ru - найдет все сайты, на которых есть ссылка на данный |
define |
Показать определение слова |
define:0day - определение термина |
cache |
Показать содержимое страницы в кэше (если имеется) |
cache:google.com - откроет страницу из кэша |
Таблица 2 – Специальные символы запросов google
Символ
|
Смысл
|
Пример
|
“ |
Точная фраза |
intitle:«RouterOS router configuration page» - поиск роутеров |
* |
Любой текст |
inurl:«bitrix*mcart» - поиск сайтов на bitrix с уязвимым модулем mcart |
. |
Любой символ |
Index.of - аналогично запросу index of |
- |
Исключить слово |
error -warning - показать все страницы, где есть error, но нет warning |
.. |
Диапазон |
cve 2006..2016 - показать уязвимости по годам начиная с 2006 |
| |
Логическое «или» |
linux | windows - показать страницы, где встречается либо первое либо второе слово |
Стоит понимать, что любой запрос к поисковой системе - это поиск только по словам.
Бесполезно искать на странице мета-символы (кавычки, скобки, знаки пунктуации и т. п). Даже поиск по точной фразе, указанной в кавычках, - это поиск по словам, с последующим поиском точного совпадения уже в результатах.
Все дорки Google Hack Database разделены логически на 14 категорий и представлены в таблице 3.
Таблица 3 – Категории Google Hack Database
Категория
|
Что позволяет найти
|
Пример
|
Footholds |
Веб-шеллы, публичные файловые менеджеры |
Найти все взломанные сайты, где залиты перечисленные вебшеллы: (intitle:«phpshell» OR intitle:«c99shell» OR intitle:«r57shell» OR intitle:«PHP Shell » OR intitle:«phpRemoteView») `rwx` «uname» |
Files containing usernames |
Файлы реестра, конфигурационные файлы, логи, файлы, содержащие историю введенных команд |
Найти все файлы реестра, содержащие информацию об аккаунтах: filetype:reg reg +intext:«internet account manager» |
Sensitive Directories |
Каталоги с различной информацией (личные документы, конфиги vpn, скрытые репозитории и т.д.) |
Найти все листинги директорий содержащих файлы, относящиеся к vpn: «Config» intitle:«Index of» intext:vpn Сайты, содержащие git-репозитории: (intext:«index of /.git») («parent directory») |
Web Server Detection |
Версию и иную информацию о веб-сервере |
Найти административные консоли сервера JBoss: inurl:"/web-console/" intitle:«Administration Console» |
Vulnerable Files |
Скрипты, содержащие известные уязвимости |
Найти сайты, использующие скрипт, позволяющий выгрузить произвольный файл с сервера: allinurl:forcedownload.php?file= |
Vulnerable Servers |
Инсталляционные скрипты, веб-шеллы, открытые административные консоли и т.д |
Найти открытые PHPMyAdmin консоли, запущенные от root: intitle:phpMyAdmin «Welcome to phpMyAdmin ***» «running on * as root@*» |
Error Messages |
Различные ошибки и предупреждения часто раскрывающие важную информацию - начиная от версии CMS до паролей |
Сайты, имеющие ошибки в выполнении sql-запросов к базе: «Warning: mysql_query()» «invalid query» |
Files containing juicy info |
Сертификаты, бэкапы, электронные письмы, логи, sql-скрипты и т.д |
Найти инициализационные sql-скрипты: filetype:sql and «insert into» -site:github.com |
Files containing passwords |
Всё что может содержать пароли - логи, sql-скрипты и т.д |
Логи, упоминающие пароли: filetype: log intext: password | pass | pw sql-скрипты содержащие пароли: ext: sql intext: username intext: password |
Sensitive Online Shopping Info |
Информацию связанную с онлайн покупками |
Найти пинкоды: dcid= bn= pin code= |
Network or vulnerability data |
Информацию, не относящуюся непосредственно к веб-ресурсу, но затрагивающую сеть либо прочие не веб-сервисы |
Найти скрипты автоматической настройки прокси, содержащие информацию о внутренней сети: inurl:proxy | inurl:wpad ext:pac | ext:dat findproxyforurl |
Pages containing login portals |
Страницы, содержащие формы входа |
Веб-страницы saplogon: intext:«2016 SAP AG. All rights reserved.» intitle:«Logon» |
Various Online Devices |
Принтеры, роутеры, системы мониторинга и т.д |
Найти конфигурационную панель принтера: intitle:" hp laserjet" inurl: SSI/ Auth/ set_ config_ deviceinfo. htm |
Advisories and Vulnerabilities |
Сайты на уязвимых версиях CMS |
Найти уязвимые плагины, через которые можно загрузить произвольный файл на сервер: inurl:fckeditor -intext:«ConfigIsEnabled = False» intext:ConfigIsEnabled |
Дорки чаще ориентированы на поиск по всем сайтам сети интернет. Но ни что не мешает ограничить область поиска на каком-либо сайте или сайтах.
Каждый запрос к google можно сосредоточить на определённом сайте, добавив к запросу ключевое слово «site:somesite.com». Данное ключевое слово может быть дописано к любому дорку.
Автоматизация поиска уязвимостей
Так родилась идея написать простенькую утилиту, автоматизирующую поиск уязвимостей с помощью поисковой системы (google) и опирающуюся на Google Hack Database.
Утилита представляет из себя скрипт, написанный на nodejs с использованием phantomjs. Если быть точным, то скрипт интерпретируется самим phantomjs.
Phantomjs - это полноценный веб-браузер без графического интерфейса, управляемый с помощью js-кода и обладающий удобным API.
Утилита получила вполне понятное название – dorks. Запустив её в командной строке (без опций) получаем короткую справку с несколькими примерами использования:
Рисунок 1 - Список основных опций dorks
Общий синтаксис утилиты: dork «команда» «список опций».
Подробное описание всех опций представлено в таблице 4.
Таблица 4 – Синтаксис dorks
Команда
|
Опция
|
Описание
|
ghdb |
-l |
Вывести нумерованный список категорий дорков Google Hack Database |
-c «номер или название категории» |
Загрузить дорки указанной категории по номеру или названию |
|
-q «фраза» |
Загрузить дорки, найденные по запросу |
|
-o «файл» |
Сохранить результат в файл (только вместе с опциями -c|-q) |
|
google |
-d «дорк» |
Задать произвольный дорк (опция может использоваться много раз, допускается сочетание с опцией -D) |
-D «файл» |
Использовать дорки из файла |
|
-s «сайт» |
Задать сайт (опция может использоваться много раз, допускается сочетание с опцией -S) |
|
-S «файл» |
Использовать сайты из файла (перебор дорков будет выполнен по каждому сайту независимо) |
|
-f «фильтр» |
Задать дополнительные ключевые слова (будет добавлено к каждому дорку) |
|
-t «количество мс» |
Интервал между запросами к google |
|
-T «количество мс» |
Таймаут, если встретилась каптча |
|
-o «файл» |
Сохранить результат в файл (будут сохранены только те дорки, по которым что-то нашлось) |
С помощью команды ghdb можно получить все дорки с exploit-db по произвольному запросу, либо указать целиком всю категорию. Если указать категорию 0 - то будет выгружена вся база (около 4.5 тысяч дорков).
Список категорий доступных на данный момент представлен на рисунке 2.
Рисунок 2 - Список доступных категорий дорков GHDB
Командой google будет произведена подстановка каждого дорка в поисковик google и проанализирован результат на предмет совпадений. Дорки по которым что-то нашлось будут сохранены в файл.
Утилита поддерживает разные режимы поиска:
1 дорк и 1 сайт;
1 дорк и много сайтов;
1 сайт и много дорков;
много сайтов и много дорков;
Список дорков и сайтов можно задать как через аргумент, так и через файл.
Демонстрация работы
Попробуем поискать какие-либо уязвимости на примере поиска сообщений об ошибках. По команде: dorks ghdb –c 7 –o errors.dorks будут загружены все известные дорки категории “Error Messages” как показано на рисунке 3.
Рисунок 3 – Загрузка всех известных дорков категории “Error Messages”
Дорки загружены и сохранены в файл. Теперь остается «натравить» их на какой-нибудь сайт (см. рисунок 4).
Рисунок 4 – Поиск уязвимостей интересуемого сайта в кэше google
Спустя какое-то время на исследуемом сайте обнаруживается несколько страниц, содержащих ошибки (см. рисунок 5).
Рисунок 5 – Найденные сообщения об ошибках
Итог, в файле result.txt получаем полный список дорков, приводящих к появлению ошибки.
На рисунке 6 представлен результат поиска ошибок сайта.
Рисунок 6 – Результат поиска ошибок
В кэше по данному дорку выводится полный бэктрейс, раскрывающих абсолютные пути скриптов, систему управления содержимым сайта и тип базы данных (см. рисунок 7).
Рисунок 7 – раскрытие информации об устройстве сайта
Однако стоит учитывать, что не все дорки из GHDB дают истинный результат. Так же google может не найти точного совпадения и показать похожий результат.
В таком случае разумнее использовать свой персональный список дорков. Например, всегда стоит поискать файлы с «необычными» расширениями, примеры которых приведены на рисунке 8.
Рисунок 8 – Список расширений файлов, не характерных для обычного веб-ресурса
В итоге, по команде dorks google –D extensions.txt –f банк, с самого первого запроса google начинает отдавать сайты с «необычными» расширениями файлов (см. рисунок 9).
Рисунок 9 – Поиск «нехороших» типов файлов на сайтах банковской тематики
Стоит иметь ввиду, что google не воспринимает запросы длиннее 32 слов.
С помощью команды dorks google –d intext:”error|warning|notice|syntax” –f университет
можно поискать ошибки интерпретатора PHP на сайтах учебной тематики (см. рисунок 10).
Рисунок 10 – Поиск PHP-ошибок времени исполнения
Иногда пользоваться какой-то одной или двумя категориями дорков не удобно.
Например, если известно, что сайт работает на движке wordpress, то нужны дорки именно по wordpress. В таком случае удобно воспользоваться поиском Google Hack Database. Команда dorks ghdb –q wordpress –o wordpress_dorks.txt загрузит все дорки по Wordpress, как показано на рисунке 11:
Рисунок 11 – Поиск дорков, относящихся к Wordpress
Снова вернемся к банкам и командой dorks google –D wordpress_dords.txt –f банк попробуем найти что-нибудь интересное, связанное с wordpress (см. рисунок 12).
Рисунок 12 – Поиск уязвимостей Wordpress
Стоит заметить, что поиск на Google Hack Database не воспринимает слова короче 4 символов. Например, если CMS сайта не известна, но известен язык - PHP. В таком случае можно отфильтровать нужное вручную с помощью пайпа и системной утилиты поиска dorks –c all | findstr /I php > php_dorks.txt (см. рисунок 13):
Рисунок 13 – Поиск по всем доркам, где есть упоминание PHP
Поиск уязвимостей или какой-то чувствительной информации в поисковой системе следует искать только в случае если по данному сайту есть значительный индекс. Например, если у сайта проиндексировано 10-15 страниц, то глупо что-либо искать подобным образом. Проверить размер индекса просто - достаточно ввести в строку поиска google «site:somesite.com». Пример сайта с недостаточным индексом показан на рисунке 14.
Рисунок 14 – Проверка размера индекса сайта
Теперь о неприятном… Периодически google может запросить каптчу - тут ничего не поделать - её придется ввести. Например, у меня, при переборе категории «Error Messages» (90 дорков) каптча выпала только один раз.
Стоит добавить, что phantomjs поддерживает работу так же и через прокси, как через http, так и через socks интерфейс. Для включения режима прокси надо раскоментировать соответствующую строку в dorks.bat или dorks.sh.
Инструмент доступен в виде исходного кода
SSY stands for "Siddha Samadhi Yoga" (often expanded as ‘Science of Silence Yoga’) where Siddha means ‘something (i.e., knowledge) that is proven or accomplished’, Samadhi means ‘a state in which the intellect is equanimous’ and Yoga means ‘union with one’s higher self’.
SSY is the fundamental knowledge of life. Our ancient rishis had formulated a unique mode of training called Brahmopadesam, which is an instruction on the science of non-doing and experiencing stillness within and abundance without. It brings about a sea change in one’s outlook towards life and effects remarkable maturity in the individual. SSY is nothing but the present-day version of this ancient science of Brahmopadesam.
SSY as a training programme is offered by
Life Yessence Academy (LiYA)
, and it is the flagship programme of the institution. Being the flagship programme, it has become synonymous with the name of the organisation. Trainings of this great knowledge are taught in many places in the world by teachers of LiYA. The Indian chapter of LiYA is called
Rishi Samskruti Vidya Kendra (RSVK
).
“I am the Body” is the first notion that kills the awakening. SSY is the process
To enter into Samadhi, the state of total detachment.
"
-Guruji