Читаем Техника сетевых атак полностью

Ниже приведен пример (на диске, прилагаемом к книге, он находится в файлах “/SRC/form.htm” и “/SRC/form.pl”) импровизированного виртуального магазина, занимающегося продажей товара через Internet c оплатой по кредитным карточкам. Перед первой покупкой посетителю (как это заведено в большинстве систем электронной торговли) необходимо зарегистрироваться - ввести свое имя и номер кредитной карты. Здесь не будет обсуждаться вопрос контроля достоверности представленной информации (это тема для отдельного разговора). Скрипт просто запоминает введенные сведения, и сверят всякий раз при загрузке.

· «HTML»· «HEAD»· «TITLE»VIRTUAL SHOP's "Hamburg"«/title»· «META charset=windows-1251»· «/HEAD»·· «BODY»· «H1»«CENTER»VIRTUAL SHOP's "«U»Hamburg«/U»"«/CENTER»· «HR»· «/H1»· «CENTER»· «form method="POST" action="form.pl"»· «br»Name:· «BR»· «input type="text" size="30" maxlength="300" name="name" value="Vasia"»· «BR»· «br»Credit card number:· «BR»· «input type="text" size="30" maxlength="30" name="card" value="OC271191"»· «BR»· «BR»· «input type="submit" value="Welcome"»· «/form»· «/div»· «HR»· «/body»·· «/html»·· #!/usr/local/bin/perl· print "Content-type: text/html\n\n";· print "«HEAD» «title»VIRTUAL SHOPs 'Hamburg'«/title»«/head»\n";· print "«BODY» «H1»«CENTER»VIRTUAL SHOPs '«U»Hamburg«/U»'«/H1»«/CENTER»«HR»«BR»\n";·· parseparameters();· $Name=$parameters{'name'};· $Card=$parameters{'card'};· $Passwd="None";· $file="users.dat";·· open(F,"«$file") || die "File $file not exist!\n";·· while($f=«F»)· {· $tmp=«F»;· if ("$Name\n"=~$f)· {· if ($tmp!~$Card)· {· print "«CENTER»«H1»Wrong Card Number«/H1»«HR»";· die;·}·· $Passwd=$tmp;·}·}·· if ($Passwd=~/None/)· {· open(F,"»$file");· print F "$Name\n";· print F "$Card\n";· close(F);· print "«B»New Buyer!«/B»«BR»\n";·}·· print «EOF;· Buyer:$Name· «BR»· Card:$Card· «TABLE width=100% border=1»· «TR»· «TH»Product ID· «TH»Product Name· «TH»Purchase· «TR»· «TD»Y2ZA· «TD»Mice· «TD»1 dollar· «TR»· «TD»ZG6T· «TD»Mice Pad· «TD»5 dollar· «TR»· «TD»3 FZ9Y· «TD»CD-ROM RACK· «TD»7 dollar· «/table»· «HR»· «CENTER»· «form method="POST" action="buy.pl"»· Product ID:· «input type="text" size="30" maxlength="30" name="$Name"; value="Y2ZA"»· «input type="submit" value="Buy"»· «/form»· EOF···· sub parseparameters(;$) {· local $_ = shift || $ENV{"REQUEST_METHOD"};· my $buffer;·· $buffer = $ENV{"QUERY_STRING"} if (/^[Gg][Ee][Tt]$/);· read(STDIN, $buffer, $ENV{"CONTENT_LENGTH"}) if (/^[Pp][Oo][Ss][Tt]$/);·· @_ = split(/ amp;/, $buffer);· for (@_) {· tr/+/ /;· s/%(…)/pack("c",hex($1))/ge;· (my $key, my $value) = split(/=/, $_);· $parameters{lc($key)} = $value;·}·}·

Если ввести имя пользователя и код кредитной карточки [302] (например, “Kris Kaspersky; oc674-ui56”) и нажать кнопку “Welcome”, то сервер поприветствует нового покупателя и предложит ввести код товара для покупки. На первый взгляд все работает нормально…

Рисунок 025 Импровизированный виртуальный магазин
Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных