WYSINWYC — What you see is not what you copy

В сети появилось несколько сообщений об интересной уязвимости: при копировании текста с веб-сайта можно скопировать скрытый текст, который может выполнить что угодно. При вставке текста вы его можете увидеть, но не сможете отменить его исполнение. Примечательно, что при выделении строки тройным кликом, строка со скрытым текстом не выделяется по-нормальному, выделяется только кусок строки. В общем, доверяй, да проверяй, самым надежным все же остается ручной ввод команд.


Теги: , , , , , ,

watch me

Иногда бывает, что у вас пропал интернет и соединение к консоли сервера оборвалось, а когда вы залогиниваетесь снова, то обнаруживаете, что консоль не умерла, а в ней еще запущен какой-то процесс. Убивать ту консоль очень не хочется, а запустить команду в скрине (screen) вы забыли. Что делать?

watch vs screen

screen – очень удобная утилита. Если нужно надолго запустить команду и/или отсоедниться от консоли не закрывая, нужно зайти в screen, запустить команду, выйти из скрина и можно даже уйти с сервера. Когда вернетесь, в скрине будет выполняться (или уже выполнена) ваша команда, например:

screen
find / -name a1*.txt
[CTRL-A-D]

# screen detached

# logout/login

screen -r

# search results

[CTRL-D]

# screen closed

Для подробностей, читайте man screen. Если вы до сих пор не знали эту утилиту, уверен, вы ее полюбите =)

Но как может помочь watch с "умершей" консолью?

Командой watch -W можно подключиться к консоли в режиме управления, тогда можно не только наблюдать, но и полноценно управлять ею, словно это ваш сеанс.

watch ttyp1

# or

watch p1

[CTRL-G]

# watch detached

watch -W p1

# "rw mode"

Может кому-то пригодится. =)

N.B.

ядро должно быть собрано с устройством snp:

device snp

иначе при запуске команды watch вы получите сообщение:

watch: snp module not available: No such file or directory
watch: open /dev/snp0: No such file or directory

Теги: , , , , , , ,

csh in single mode on FreeBSD

Если вы любите оболочку csh и редактор ee (Easy Editor), возможно вы сталкивались со следующей проблемой. При загрузке в однопользовательском режиме (4 – single mode), требуется ввести путь к оболочке, по умолчанию это /bin/sh. Если вы вводите /bin/csh – он ругается на невозможность открыть /etc/termcap. Когда вы пытаетесь редактировать в редакторе ee какой-нибудь файл, текст на консоли выглядит как сплошное месиво.

Красная таблетка

Лечится это очень легко. Достаточно указать правильный тип терминала:

setenv TERM cons25

Все, теперь, даже несмотря на то, что терминал не подхватил настройки и украшательства из файла .cshrc, csh жив и вполне юзабелен.


Теги: , , , , , , , , , , , ,

Simon says? Cow says!

Говорит и показывает корова

cowsay – бесполезный 🙂 перловый скрипт, который выводит заранее напечатанный текст в виде ASCII-картинки говорящей или думающей коровы. И не только коровы, а любого персонажа из заготовленного набора.

Оригинальная корова:

~> set M="Hello, world\!"
~> cowsay $M
 _______________
< Hello, world! >
 ---------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

Читать остальную часть заметки »


Теги: , , , , , , , , , ,

Оповещение о логине в ssh

В блоге itblog.suпопалась заметка об оповещении по почте о входе в консоль.

echo ‘ALERT — Root Shell Access on:’ `date` `who` | mail -s «Alert: Root Access from `who | awk ‘{print $6}’`» user@dom.dom

Вспомнил, что у меня давно используется такая штука. Ну, мало ли, вдруг найдется мегахацкер, который взломает сервер =). Только у меня немного не так:

echo «ALERT — Root Shell Access on: `date; echo; who | bwtail -1`» | mail -s «Root From: `who | bwtail -1`» root@domain.com

who может вывалить пакаван данных о логинах, но они мне не нужны, т.к. замысел в оповещении о последнем логине, поэтому я отрезаю одну строку с помощью tail.

Что такое bwtail? =) Это черно-белая версия tail (по сути просто хардлинк на tail), который у меня сделан цветным:

# from .cshrc
alias tail      /root/bin/coloredtail.sh

Вот так:

~> cat /root/bin/coloredtail.sh
#!/bin/sh

/usr/bin/tail $@ | /usr/local/bin/colorize


Теги: , , , , , , , , , , , , , ,

Чистка файлов от iframe вставок

По мотивам предыдущей заметки =)

Итак, если ваш сайт взломан или подобран пароль к вашему фтп-аккаунту и в некоторых (или во всех) файлах присутствует вражеский код iframe – самое время заняться чисткой.

Обнаружение противника

Для начала вражеский код нужно обнаружить. Самый безопасный и правильный подход – найти подозрительные участки кода в зараженных файлах и детерминировать их как вредоносные.

find . -name "*.php*" -or -name "*.*htm*" -exec grep "iframe" {} \; -print | less

В результате вы увидите код ифреймов и пути к зараженным файлам:

<iframe src=»site.ru» width=»0″></iframe>
/root/temp/3/1.htm
<iframe src=»site.ru» width=»0″></iframe>
/root/temp/3/1.shtml
<iframe src=»site.ru» width=»0″></iframe>
/root/temp/3/1.html

Если не хотите видеть путь к файлам (в принципе, на данном этапе он и не нужен), уберите ключ -print.

Читать остальную часть заметки »


Теги: , , , , , , , , , , , , , ,

Настраиваемое приветствие в консоли

Каждый раз, когда вы логинитесь по ssh на сервер или компьютер, вы видите унылое говно одну и ту же картину:

Last login: Mon Aug 17 15:02:25 2009 from ip.com
Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
The Regents of the University of California.  All rights reserved.

FreeBSD x.y-RELEASE-pZ (KERNEL) #A: Thu Apr 17 11:21:34 EDT 2008

Welcome to FreeBSD!
For information on the web, visit us at www.pcbsd.org
«man tuning» gives some tips how to tune performance of your FreeBSD system.
— David Scheidt <dscheidt@tumbolia.com>

Т.е., информацию Last login, копирайт, содержимое /etc/motd (версию системы) и какой-нибудь fortune. Скучно? Скучно!

Кастрация Кастомизация

“Проснись, Нео!”

Wake up, Neo!

Читать остальную часть заметки »


Теги: , , , , , , , , , , , , , , , , , , , , , ,