Техника сетевых атак
Шрифт:
Вызов без параметров выводит на экран содержимое текущего каталога, а заглянуть в корень поможет наклонная черта - “ls /” [91]
· ls /
· A E proc
· base.bat etc reg
· baseserviceslink.sh F sys
· bin H tmp
· C home usr
· D lib var
· dev linka win
Узнать, что находится в каталоге “/etc” можно передав его имя в качестве параметра команде ‘ls’:
· $ ls /etc
· crontab inetdconfig.sh passwd.add traceit
· in.ftpd init.exe priv.exe tracer.exe
· in.rlogind login.allow profile ucs.exe
· in.rshd login.deny rc ums.exe
· in.telnetd mailx.rc services
· inetd.conf mkpasswd.exe shells
· inetd.exe passwd stop_uwin
Конечно
Конечно же, временами гибкости таких шаблонов оказывается недостаточно, например, как быть, когда требуется получить список файлов, начинающихся и на букву ‘i’, и на букву ‘p’? В MS-DOS с этим пришлось бы управляться в два захода, последовательно отдавая команды ‘dir i*’ и ‘dir p*’. К счастью, в UNIX с той же проблемой можно управиться за один присест! Например, так:
· $ ls /etc/[ip]*
· /etc/in.ftpd /etc/inetd.conf /etc/passwd
· /etc/in.rlogind /etc/inetd.exe /etc/passwd.add
· /etc/in.rshd /etc/inetdconfig.sh /etc/priv.exe
· /etc/in.telnetd /etc/init.exe /etc/profile
А как быть, если необходимо отобразить все файлы, в имени которых присутствует хотя бы одна цифра? Неужели придется писать утомительно длительную последовательность ‘ls *[0123456789]*’ [92]? К счастью нет! И необходимый интервал можно задать следующим образом: ‘[0-9]’, например, вот так:
· $ls /etc/*[0-9]*
· /etc/k1y /etc/mkss2old /etc/track7
Если такой информации окажется недостаточно и потребуется узнать, скажем, права доступа к файлу, имя владельца и время последнего изменения, то придется воспользоваться ключом ‘-l’ (маленькая латинская буква L, не спутайте с единицей). Например, так:
· ls -l /etc
· -rwxr-r- 1 root Everyone 46 Feb 16 1999 crontab
· -rwxr-r- 1 root Everyone 19968 Feb 17 1999 mkpasswd.exe
· drwxr-r- 2 root Everyone 512 Jul 2 16:52 mydir
· -rwxr-r- 1 root Everyone 119 Jul 1 12:45 passwd
· lrwxr-r- 1 root Everyone 20 Jun 4 03:10 services -» /C/WINDOWS//services
· -rwxr-r- 1 root Everyone 88 Feb 17 1999 shells
· -rwxr-r- 1 root Everyone 73216 Feb 2 07:25 ums.exe
Первая колонка сообщает права доступа. Она состоит из тех трехсимвольных групп, определяющих права доступа создателя (то бишь владельца файла), его группы и всех остальных пользователей. Каждая группа в свою очередь состоит из трех атрибутов, разрешающих чтение (r), запись (w) и исполнение (x).
– Расшифровка
Тут надобно заметить, что в UNIX выполняемые файлы распознаются по атрибуту ‘x’, и могут иметь любое расширение или вовсе не иметь его. Обычно большинство файлов и каталогов имеют следующие права доступа ‘rwxr-r-r’, т.е. создатель файла может делать с ним что угодно, а всем остальным разрешается читать, но не модифицировать или запускать.
Для изменения прав доступа предусмотрена утилита chmod (сокращение от Change Mode). Для того, чтобы действие возымело эффект, необходимо указать группу пользователей (‘u’ - для владельца, ‘g’ - для членов его группы, ‘o’ - для всех прочих и ‘a’ для всех-всех, т.е. ‘u’+’g’+’o’ одновременно), затем наличие (знак ‘+’) или отсутствие (знак ‘-‘) требуемого атрибута. Например, защитить собственные файлы от «чужого глаза» можно с помощью команды ‘chmod g-r,o-r *’.
Директории отличаются от простых файлов по стоящему впереди символу ‘d’ (смотри рисунок 009.txt)
– Директории в UNIX отличаются от файлов наличием атрибута ‘d’
Следующая колонка сообщает количество псевдонимов, под которыми файл (директория) известен системе. Например, для каталога ‘/bin’ это число равно двум, поскольку обычно ‘/bin’ и ‘/usr/bin’ ссылаются на одну и ту же директорию.
· drwxrwxrwx 2 root Everyone 512 Jun 4 00:50 bin
· drwxrwxrwx 3 root Everyone 512 Jun 4 00:51 dev
· drwxrwxrwx 16 root Everyone 512 Jun 4 00:51 lib
Затем идет имя владельца файла (в данном примере ‘root’) и группа, к которой он принадлежит (‘Everyone’). И замыкают строку размер, время создания и имя файла (директории). Вся остальная информация по работе с ‘ls’ содержится в руководстве ‘man’ и может быть получена с помощью команды ‘man ls’.
Перейти в другой каталог, как и в MS-DOS, можно с помощью команды ‘cd’. Стоит заметить, в UNIX нет понятия диска, поэтому специальной команды для его изменения не существует - для навигации достаточно одного ‘cd’. Например:
· $ cd /
· $ ls
· A E proc
· base.bat etc reg
· baseserviceslink.sh F sys
· bin H tmp
· C home usr
· D lib var
· dev linka win
· $ cd /A
· $ ls
· tpna.arj
· $ cd /var
· $ ls
· adm tmp uninstall