четверг, 23 апреля 2009 г.

"WINDOWS ЗАБЛОКИРОВАН" или как победить новую версию winlock.

Попалась мне новая модификация winlock. Hа этот раз в его отличиях следующие:

1. Невозможно вызвать параметры "залипания" нажатием Shift 5 раз.
2. Рандомное название файлов *.tmp и *.bin вируса.
3. Рандомное расположение файлов *.tmp и *.bin.
4. Не подходят коды сгенерированные кей геном с сайта Dr.Web.

Произошло это все на ноутбуке одного из пользователей, т.к. многие Live CD в виндой часто себя плохо ведут на ноутбуках (не загружаются). Решил использовать Live CD с Linux со встроенным драйвером ntfs-3g и на всякий случай антивирусом. Выбрал от Dr.Web
(скачать).
Для того, чтобы все исправить, нам понадобится:

1. Свободный компьютер с windows.
2. Флешка.
3. Live CD с Linux c драйвером ntfs-3g.

Вставляем наш загрузочный диск и грузимся с него в любом режиме (нам нужна командная строка) . Подключить флешку можно командой :
#mkdir /mnt/flash
# mount -t vfat /dev/sda1 /mnt/flash
Это в моем случае. У себя пробуйте по аналогии. Если не получается, в интернете много статей, как это сделать.
Итак, в моем случае диск с NTFS разделом был уже подцеплен в /mnt/disk1. Далее делаем следующие :

#cd /mnt/disk1/WINDOWS/system32/config
#cp software /mnt/flash
#umount /mnt/flash
Вытаскиваем флешку и идем на свободный компьютер с windows. Запускаем редактор реестра (Пуск=>Выполнить=>regedit), раскрываем ветку HKEY_LOCAL_MACHINE, идем во вкладку Файл=>Загрузить куст, выбираем наш файл software на на флешке и подсоединяем под любым удобным именем (я назвал 111). Раскрываем куст и идем по пути
Microsoft=>WindowsNT=>CurrentVersion=>Winlogon (Winlogon не раскрываем). В корне мы увидим параметр Userinit, открываем его и смотрим, куда у нас сохранился вирус. У меня "C:\WINDOWS\system32\userinit.exe,C:\DOCUME~1\user\LOCALS~1\Temp\don1A9.tmp", т.е. в моем случае он сохранился в "C:\Documents and Settings\user\Local Settings\Temp"
Переходим к больному компьютеру (который все еще работает на LiveCD). Идем по пути, который мы нашли в кусте реестра с больной машины, и удаляем 2 файла этого вируса (они рядом с одинаковым названием, но разным расширением *.tmp и *.bin (в моем случае это были don1A9.tmp и don1A9.bin)) . Перезагружаем компьютер (должен зайти в систему нормально) и заходим опять в редактор реестра, идем по тому же пути что и ранее, и в параметре Userinit убираем все, что находится после запятой. Т.е. должно получиться "C:\WINDOWS\system32\userinit.exe" (без кавычек). Перезагружаем компьютер еще раз (на всякий) и радуемся.

пятница, 13 марта 2009 г.

Конфиг виртуального хоста DSPAM WebUI (Apache 2)

Есть такой спаморез как DSPAM. Решил с ним повозиться и посмотреть что есть и с чем его едят. Но по его настройке итак много статей в интернете, к примеру вот тут. Статьи написаны хорошо и все работает, вот только конфиг виртуального хоста предлагается для Apache 1.3. А сейчас много кто использует более новые версии, для которых он не подойдет. Поэтому выкладываю рабочий конфиг для Apache 2.2.* версий.

<Virtualhost *:80>
ServerName dspam.example.com
ServerAdmin admin@example.com
DocumentRoot "/home/dspam/dspam.example.com"
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/home/dspam/dspam.example.com"
</ifModule>
# Разрешаем исполнение CGI,
# запрещаем изменение параметров htacess'ом
# и включаем MySQL аутентификацию
<Directory "/home/dspam/dspam.example.com">
Options ExecCGI
AuthName "DSPAM WebUI"
AuthUserFile /dev/null
AuthBasicAuthoritative Off
AuthType Basic
AuthMySQLEnable On
AuthMySQLHost localhost
AuthMySQLUser postfix
AuthMySQLPassword postfix
AuthMySQLDB postfix
AuthMySQLUserTable mailbox
AuthMySQLNameField username
AuthMySQLPasswordField password
AuthMySQLPwEncryption none
require valid-user
AllowOverride None
Order allow,deny
Allow from all
</Directory>
# Запрещаем пользователям доступ к служебным файлам
<Files admins>
Order allow,deny
Deny from all
</Files>
<Files configure.pl>
Order allow,deny
Deny from all
</Files>
<Files default.prefs>
Order allow,deny
Deny from all
</Files>
# Задаем индексный файл
<ifModule dir_module>
DirectoryIndex dspam.cgi
</ifModule>
# Поскольку мы не предусматриваем на этом
# виртуальном хосте исполнение PHP скриптов,
# то на всякий случай отключим их исполнение
AddType text/plain .php
# Задаем пользователя от которого
# будут работать CGI скрипты
SuexecUserGroup dspam dspam
# Логирование
ErrorLog /var/log/httpd/dspam-error.log
TransferLog /var/log/httpd/dspam-access.log
ScriptLog /var/log/httpd/dspam-script.log
</Virtualhost>

среда, 11 марта 2009 г.

О Майкрософте в 1989 году

Журнал "Радио и связь", 1989г.
из статьи "Персональные ЭВМ в инженерной практике"

....Одним из примеров громоздкой и, по мнению авторов, бесполезной надстройки является интегрированная система WINDOWS фирмы Microsoft. Эта система занимает почти 1 Мбайт дисковой памяти и рассчитана на преимущественное использование совместно с устройством типа "мышь"...

....Таким образом, читатель уже понял, что среди надстроек над ДОС бывают довольно бесполезные системы, которые только выглядят красиво, а на самом деле отнимают время пользователя, память на дисках и оперативную память ЭВМ.. Обманчивая красота таких систем, однако, сильно воздействует на неискушенных пользователей, которые не имели практики работы на машине. Инерция мышления бывает столь сильна, что авторам приходилось наблюдать, как люди, начавшие работать с подобной настройкой, впоследствии с трудом заставляют себя изучать команды ДОС. Хочется предостеречь от этой ошибки читателей...

вторник, 10 марта 2009 г.

Настройка wi-fi на Broadcom Corporation BCM4312

Итак, речь пойдет о настройке беспроводного соединения на ноутбуках с карточкой Broadcom Corporation BCM4312 (любой версии).
В новых ядрах уже поддерживается модуль сей карточки, поэтому возится с ndiswrapper не имеет особого смысла. Я буду приводить пример на Fedora 10 (2.6.27.19-170.2.35.fc10.i686).Т.е. пример будет актуален для ядер выше 2.6.25. Изучая неполадку смотрим вывод dmesg и ищем там что-то вроде:

b43-phy0 ERROR: Firmware file "b43/ucode13.fw" not found
b43-phy0 ERROR: You must go to http://linuxwireless.org/en/users/Drivers/b43#devicefirmware and download the latest firmware (version 4).

Если это видим, значит это наш случай.
У меня b43-fwcutter уже был установлен, поэтому просто найдем где он находится:
find / -name b43-fwcutter

у меня он находится в /usr/bin/b43-fwcutter. Если не установлен делаем следующие:
yum install b43-fwcutter

или
wget http://bu3sch.de/b43/fwcutter/b43-fwcutter-011.tar.bz2
tar xjf b43-fwcutter-011.tar.bz2
cd b43-fwcutter-011
make
cd ..

если ставить на другие системы linux, в случае если у вас другой дистрибутив.

Далее мы ставим новую версию firmware для нашего драйвера:

export FIRMWARE_INSTALL_DIR="/lib/firmware"
wget http://mirror2.openwrt.org/sources/broadcom-wl-4.150.10.5.tar.bz2
tar xjf broadcom-wl-4.150.10.5.tar.bz2
cd broadcom-wl-4.150.10.5/driver
sudo ../../b43-fwcutter-011/b43-fwcutter -w "$FIRMWARE_INSTALL_DIR" wl_apsta_mimo.o


Перезагружаем. Смотрим нет ли у нас ошибок в dmesg. Если нет, то (я использую NetworkManager) запускаем NetworkManager и настраиваем wi-fi на нужную сеть.