Компьютер. Радиоэлектроника. Блоки питания. Справочники. Источники питания. Радиосвязь

Финансовый словарь: что такое Shell компания. Что такое SSH (Шелл) и зачем он нам нужен Быстрое удаление файлов с хостинга

В этом руководстве объясняется, что такое шелл-аккаунт, как получить один, и некоторые основные команды. Если вы думаете, что найдете здесь описание оболочки или трюки с эксплоитами, то вы ошибаетесь. Ждите других руководств. Первая часть представляет собой лишь связку вопросов с ответами. После того, как я сделаю небольшой обзор по теме, я расскажу вам где вы можете бесплатно получить доступ к оболочке. Итак, чего мы ждем?

Вопросы, Которые Все Задают

Q: Что такое шелл-аккаунт?

A: Окей... я думаю, не нужно объяснять, что такое аккаунт, поэтому давайте лучше поговорим о шелле (оболочке). Вы вероятно пользуетесь Windows, значит вашей оболочкой являются command.com и Графическая среда. Более точно будет сказать так: оболочка - подпрограмма, которая переводит и посылает ваши команды ядру системы. Все это нужно поскольку ядро не понимает команды, которые вы даете. Например, когда вы вводите "cd ..", эта команда будет переведена оболочкой на язык низкого уровня и передана ядру (в противном случае, для управления вашим CPU нужно быть как минимум сумасшедшим). Вы представляете себе, каким болезненным занятием было бы использование компьютера, не будь у вас оболочки? Чтобы что-то сделать вам пришлось бы использовать язык низкого уровня, подобный ассемблеру или того похуже (двоичный код). Для выполнения команды "cd .." вам нужно было бы написать: push mem put mem blabla mem или огромный список вида 00101010. Вы и правда думаете, что люди согласились бы так работать? Я так не думаю. Ладно..ладно.. Есть много людей, программирующих на ассемблере, но я говорю об обычных людях.

Q: Итак, вы говорите, что оболочка - это всего лишь "вещь", переводящая вводимые мной команды в код, понятный процессору, подобно тому, чем занимается command.com. Но зачем мне тогда подключаться к удаленному command.com, если у меня есть свой собственный на моей машине.

A: Люди, заводящие себе шелл-аккаунты, подключаются не к Windows машинам, а к *nix машинам. Если у вас нет linux или любой другой *nix системы на домашней машине, то вы могли бы получить шелл-аккаунт и начать играть с linux так, как будто он стоит на вашей тачке.

Q: Мой друг, *nix гуру, сказал мне, что многие из таких оболочек - отстой, потому что они имеют ограниченные возможности. Что это означает?

A: Существует два типа оболочек - ограниченные и неограниченные. Различия между ними - за ограниченные оболочки обычно платить не нужно, они раздаются бесплатно, но в таких оболочках вы можете выполнить далеко не каждую команду (например, они могут запретить вам пользоваться nslookup и telnet программами). Совсем другая ситуация обстоит с неограниченными оболочками, вы можете выполнить любую команду, какую только захотите, но этот тип оболочек - платен (иногда неограниченные оболочки дают студентам университетов). Но даже если у вас есть только ограниченная оболочка, то не стоит расстраиваться - некоторые из них и вправду хороши.

Q: Итак, вы хотите сказать, что я могу получить оболочку, ничего не заплатив за это?

A: Да, можете. Я считаю лучшим местом, где можно ее получить, nether.net (еще один хост, раздающий бесплатные шеллы - это freeshell.org), я расскажу об этом процессе позже. Иногда ISP также дают шелл-аккаунты своим пользователям, так что, возможно, у вас уже есть доступ к шеллу, просто вы об этом не знаете. Позвоните в службу технической поддержки вашего ISP и спросите об этом.

Q: Я позвонил своему ISP с требованием предоставить мне шелл-аккаунт, и они спросили зачем он мне нужен. Что я должен ответить?

A: Просто скажите, что вам нравится серфить Интернет при помощи Lynx, и что вы хотите изучить Unix. Это должно сработать. Но если они вас пошлют, то просто сходите и получите бесплатную оболочку.

Q: Эй, у меня есть оболочка, но как мне узнать хорошая она или нет?

A: Я думаю, что однозначного ответа на этот вопрос быть не может, все зависит от человека, который его задал. Лично для меня хорошей оболочкой является та, в которой я могу делать все ниже перечисленные вещи.
-> Telnet (эмулятор терминала)
-> Nslookup (Дает вам информацию о хосте)
-> FTP (Протокол Передачи Файлов, комментарии излишни, так ведь?)
-> Finger (Дает информацию о конкретном пользователе)
-> Traceroute (То же, что и tracerT.exe в Windows, но гораздо лучше)
-> Dig (вероятно, многие оболочки не позволяют использовать это, но
не стоит об этом беспокоиться)
-> Netstat (как и в windows, список всех сокетов и их статус)
-> GCC (c компилятор, круто для создания собственных программ)
-> Gzip (утилита для расзапаковки файлов)
-> Lynx (Лучший Браузер в Мире)

Это отнюдь не означает, что для вас оболочка с такими возможностями будет хорошей. Возможно для вас хорошей оболочкой будет та, которая позволит вам всего лишь использовать telnet, как я уже говорил раньше - трудно дать однозначный ответ на этот вопрос. Но если ваш шелл-аккаунт не позволяет вам использовать telnet, FTP и GCC, то вам нужно получить другой шелл-аккаунт.

Ну, я думаю, вы уже достаточно раздражены, прочитав кучу глупых вопросов и еще более глупых ответов, поэтому позвольте мне перейти к следующему
разделу. Давайте поговорим немного о разновидностях шелл-аккаунтов.

Быстрый Обзор Разновидностей Шелл-Аккаунтов

Здесь представлены возможные типы шелл-аккаунтов, одни из них мы называем домашними оболочками, другие "стандартными" оболочками. Давайте поговорим о "стандартных" оболочках.

Просто для общего развития

Домашние оболочки - это оболочки, созданные системным оператором, владеющим системой, и они просто работают на его системе. Как я уже сказал выше, существует много оболочек. Вы имеете:
-> shell: Bourne Shell
-> Bash: Bourne Again Shell
-> Cshell: C Shell
-> Tcsh: Technical C Shell
-> Ksh: Kourne Shell
И многие другие. (Я указал только эти, потому что только их вы можете получить на nether.net). Каждая оболочка имеет преимущества и недостатки. Например, Cshell позволяет вам вводить C команды так, как если бы они были обычными командами, то есть если вводите printf Hello, то результат этой команды будет такой же как и у команды echo в других оболочках (для тех, кто не знаком с языком C, поясняю, printf отображает на экране текст, идущий следом за этой командой). Я не смогу описать преимущества и недостатки каждой оболочки, это вам придется выяснить самим. Просто получите одну из них на хостах, предоставляющих бесплатный доступ к оболочке и начинайте изучение. Я лишь могу вам порекомендовать Bash - это лучшая оболочка для начинающих пользователей, но если вы хотите обзавестись более мощной оболочкой, то получите доступ к C оболочке. Начните с bash, изучите систему, научитесь писать скрипты для bash, а затем приступайте к использованию других оболочек. Поговорите с вашими друзьями, спросите какие оболочки используют они, чем они им нравятся. Ну что, поняли идею?;) Если у вас уже есть одна оболочка, но вы не знаете что это за оболочка, то просто введите echo $shell и это, вероятно, покажет тип используемой вами оболочки. Так как это краткий обзор, то на этом я закончу разговор по этой теме. Это должно помочь вам получить реально крутой шелл-аккаунт.

Получение Шелл-Аккаунта На Nether.net

Итак, вы готовы получить свой первый шелл-аккаунт? Ну конечно готовы. Единственная вещь, которую я не люблю в nether.net - это время оффлайна, то есть сервер иногда бывает недоступен. Если сможете подключиться, то можете дальше не беспокоиться, просто иногда на nether.net отвисает слишком много народу - он становится переполнен и уходит в оффлайн. Просто подождите какое-то время и подключайтесь снова.

Шаг 1. (Подготовка вашей терминальной программы)

Откройте вашу telnet программу, вы можете обнаружить ее в директории windows под именем telnet.exe

Шаг 2. (Подключение)

Теперь, вы уже вероятно успели запустить свой Telnet-клиент, если так, то выберите меню Подключить, затем там же Удаленная Система. Появится другое окошко, спрашивающее у вас имя узла, порт и тип терминала. Введите в эти поля следующую информацию:

Имя узла: nether.net
Порт: Telnet (или 23 - это то же самое)
Тип терминала: vt100 (это значение должно быть установлено по умолчанию)

Подождите немного и...

Шаг 3. (Подключение)

Теперь вы увидите nether.net банер. Он сообщает:

Kernel SunOS 5.6 Generic_105181-17 on a sun4d
Welcome to nether.net

New to the system? Login as newuser

Теперь, как они и сказали, введите newuser в качестве логина. Программа, называющаяся newuser запустится, и поможет вам в создании аккаунта.

Шаг 4. (Изменение назначения клавиш)

После всего этого дерьма, программа newuser предложит вам изменить функциональные клавиши под свои нужды. Будет запрошена клавиша удаления (^H)
и клавиша прерывания (^C). В скобках клавиши, установленные по умолчанию, но если вы хотите, то вы можете изменить их на любые другие. ^H - это клавиша удаления (та, на которой нарисован символ <-), и ^C - это комбинация клавиш ctrl+c. Внимание, не пишите ^H или ^C, просто нажимайте соответствующие клавиши, и эти символы будут появляться на экране.

Шаг 5. (Выбор Типа Терминала)

После того, как вы измените назначение функциональных клавиш, вас попросят ввести тип вашего терминала, вы можете выбрать? и программа выведет все доступные типы терминалов, но вы должны выбрать vt100 или просто нажать кнопку enter. Нажатие кнопки enter означает, что вы выбрали "немой" терминал. Но это не проблема, потому что позже вы можете его изменить.

Шаг 6. (Персональные Данные)

У вас будут запрошены некоторые вещи, подобно вашему полному имени, номеру телефона, дате рождения, полу, блаблабла, ну, я думаю, понятно. Если вы хотите, то вы можете на все вопросы ввести, например, символ "." и нажать на кнопку enter. Вы также можете вводить ненастоящие данные, и я уверен,
что так делает 98% пользователей nether.net. В конце всех вопросов вас спросят: хотите ли вы скрыть эту информацию от других пользователей. Просто ответьте да или нет, я рекомендую ответить - да.

Шаг 7. (Выбор Оболочки)

Теперь вам покажут список доступных оболочек, просто выберите одну из них, как я уже говорил выше - если вы новичок, то выбирайте оболочку bash.

Шаг 8. (Выбор Логина)

Просто выберите себе логин, максимальная длина - 8 символов.

Шаг 9. (Выбор Пароля)

Выберите пароль, это будет запрошено два раза, чтобы подтвердить правильность введенного вами пароля. Позже вы сможете изменить пароль, используя команду passwd.

Шаг 10. (Подтверждение указанных данных)

На этот раз вашему взору предстанет что-то вроде этого:
full name: Полное Имя
loginid: ваш логин password: <не показывается>
address: ваш адрес, который вы указали
telephone: номер телефона, который вы указали
other e-mail addresses: ваш адрес e-mail, который вы указали
occupation: то, что вы указали
computers: то, что вы указали
birthdate: указанная дата sex: указанный вами пол
interests: что-нибудь
how (did you find out about us): как вы узнали о них
Privacy switch on/off
shell: ваш шелл-аккаунт terminal: тип вашего терминала
erase "^H" kill "^U" interrupt "^C"

Type "help" for a list of things you can change.

Select thing to change or "done"?

Теперь, если вы соглашаетесь со всеми введенными вами данными, нажмите кнопку enter, или, если вы хотите что-либо изменить просто введите то, что вы хотите поменять.

Шаг 11. (Заключительные манипуляции)

Теперь программа проверит, не зарегистрирован ли уже такой логин, вы должны будете увидеть связку меняющихся чисел, все нормально - не пугайтесь... Теперь если пользователь с таким логином уже зарегистрирован, то вам предложат выбрать другой, а если нет, то система зашифрует ваш пароль и вам придется провести еще какое-то время в разглядывании меняющихся чисел. После этого...

Шаг 12. (Поздравляю, у вас теперь есть шелл-аккаунт)

Да, теперь у вас есть шелл-аккаунт, теперь вам нужно снова зайти в систему, ввести свой новый логин, точный пароль, нажать enter и хорошо провести время. Запомните, что вы можете иметь столько оболочек, сколько захотите. Так, если вы хотите, вы можете заново зарегистрироваться в системе как новый пользователь, только вместо выбора bash оболочки выбрать оболочку Cshell или еще какую, или снова выбрать оболочку bash, если вам нужно две..

Команды

Естественно, я не буду описывать все команды, существующие в *nix системах, если бы я сделал это, то этот файл получился бы действительно огромным. Ес-
ли вы хотите получить большое количество информации о командах, то просто не забудьте заглянуть в секцию Заключительные Примечания. Ниже приводятся основные команды с описанием их функций.

Синтаксис: команда [ключи] -> описание

man [команда] -> отображение информации по [команде], которую вы указали.

cd [директория] -> так же, как и в DOS эта команда сменяет текущую директорию, с которой вы работаете, если вы хотите вернуться в домашнюю директорию просто введите cd без параметра [директория].

ls [-al] -> ls выполняет ту же функцию, что и dir в DOS, она выводит список каждого файла в директории, -al - это пара ключей, которые вы можете использовать. Использование этой пары ключей позволяет выводить список всех файлов в директории, включая скрытые, также будут отображены права доступа к файлам, группа и их владельцы. Чтобы узнать все остальные ключи введите man ls.

cat [файл] -> аналогично команде type в DOS, она отображает содержимое указанного [файла].

logout -> Отключает вас от вашего шелл-аккаунта.

who -> показывает, кто в данный момент находится в системе, выводит информацию об этих пользователях. Существует множество программ, делающих вас невидимыми по команде who, но это тема для другого руководства.

ps [-aux] -> ps показывает все запущенные процессы, почти то же, что и ctrl+alt+del в windows (не перезагрузка, а список запущенных программ), но более мощное, неизвестно, как можно запустить программу, чтобы она не отображалась по команде ps. Если вы запустите ps без ключей, то вы увидите только те процессы, которыми владеете непосредственно вы, если вы используете ключ -aux, то будут показаны все процессы, запущенные на машине.

joe [файл] -> joe - это текстовый редактор, он редактирует или создает указанный [файл]. Иногда на хостах поставщиков бесплатных шеллов нет joe, но должен быть другой редактор, например vi.

Этих команд вам должно хватить для начала. Также используйте команду man для получения больших и подробных описаний команд, рассмотренных нами.
Удачного серфинга!

Заключительные Замечания

Теперь все, что вам нужно это побольше практиковаться и обзавестись хорошими книгами, содержащими описание команд. Одной из лучших *nix книг является эта:

UNIX IN A NUTSHELL. Вы можете найти ее в разделе, посвященному книгам на веб-странице BSRF (http://blacksun.box.sk/). Как мне кажется, это лучшая книга по нашей с вами теме, а так как она абсолютно бесплатна, то я настоятельно рекомендую вам обзавестись ею. Другая хорошая вещь - это man. К примеру, если вы хотите получить некоторую информацию о telnet, и о том как его использовать, просто введите:

И вы получите страницу с подсказкой по telnet. Если вы используете оболочку на сервере freeshell (freeshell.org) вы также можете использовать команду help без каких-либо опций. Это вызовет меню с опциями, которые вы можете выбрать. И имейте в виду, что *nix чувствителен к регистру, таким образом Man, man и MaN или.profile и.Profile - это не одно и то же.

Приложения

A) Могу ли я запустить IRC-ботов на бесплатном шелл-аккаунте?
Нет!! Если только вы не собираетесь провисать на шелле 24 часа в сутки. Поставщики бесплатных оболочек прибивают все запущенные вами процессы, сразу же как только вы отключитесь от системы.

B) А есть еще какие-нибудь места, где я могу получить шелл-аккаунт?
Конечно! Попробуйте

Обычно под шеллом подразумевают скрипт, который хакеры загружают на сервер и с его помощью осуществляется дальнейшее управление сервером. По запросу в поисковике можно найти множество шеллов и их популярность неизбежно растет. Всё больше и больше начинающих хакеров стремятся его закачать хоть куда-нибудь. Вот фото самого излюбленного шелла хакеров WSO 2.4:

Шелл имеет авторизацию и не виден для поисковиков. После авторизации в шелле мы попадаем непосредственно в его интерфейс. Перед нами всё, что может понадобиться хакеру для управления сервером. Первоначально открывается страница с файлами (вкладка Files) в которую загружен шелл.

Первая вкладка Security Info:

Тут есть вся необходимая информация о сервере и его защите. Показывается тип сервера Server software: Apache/2.2.25 (FreeBSD), установленные модули сервера Loaded Apache modules:core, prefork, http_core, mod_so..., выключенные функции модуля PHP- Disabled PHP Functions. Тут стоить отметить несколько важных функций: shell_exec,exec,system,passthru. Эти функции выполняют команды на сервере от операционной системы, на большинстве хостингов они отключены. Показывает поддержку сURL - cURL support: enabled, Виды поддерживаемых БД - Supported databases: MySql (5.5.33), MSSQL, PostgreSQL.

Также если доступен для чтения файл пользователей сервера (Readable /etc/passwd: yes ) , можно посмотреть пользователей для дальнейшего подбора паролей. И показывается файл хостов сервера (Hosts).

Вторая вкладка Files:

Первое фото.

При помощи файлового менеджера можно загрузить, изменить или удалить любой файл в любой папке сервера к которой будет доступ.

Третья вкладка Sape:

Ну об этой секретной вкладке я ничего рассказывать не буду....

Четвертая вкладка Console:

Тут как раз выполняются злые функции shell_exec,exec,system,passthru, которые взаимодействуют с операционной системой, имеется набор готовых шаблонов запросов к операционной системе: просмотр папок, поиск системных файлов, просмотр открытых портов и тд.

Сама функция:

Function wsoEx($in) { $out = ""; if (function_exists("exec")) { @exec($in,$out); $out = @join("\n",$out); } elseif (function_exists("passthru")) { ob_start(); @passthru($in); $out = ob_get_clean(); } elseif (function_exists("system")) { ob_start(); @system($in); $out = ob_get_clean(); } elseif (function_exists("shell_exec")) { $out = shell_exec($in); } elseif (is_resource($f = @popen($in,"r"))) { $out = ""; while(!@feof($f)) $out .= fread($f,1024); pclose($f); } return $out; }

Пятая вкладка SQL:

Это полноценный SQL менеджер, с его помощью можно соединиться с БД на любом сервере, имея все данные для подключения, имеются функции просмотра БД, таблиц, структуры, выполнение произвольных запросов, дампа БД и таблиц.

Шестая вкладка PHP:

Тут можно выполнять код на языке PHP и просматривать результаты выполнения...

Седьмая вкладка Safe Mode:

Эта вкладка используется при включенном режиме Safe mode, имеются функции просмотра папок, копирование файлов и чтение файлов через cURL....

Восьмая вкладка String Tools:

Эта вкладка отвечает за работу со строками и их поиск в файлах. Имеется универсальный кодировщик-декодировщик текста и поисковик текста и разными условиями поиска. Также можно искать файлы в папках по названию.

SSH или Shell – это штука на подобие Radmin-а, но для Linux. Оболочка Шелл позволяет удаленно управлять операционной системой.

Зачем нам это нужно?
- А нужно нам это чаще всего для того, чтобы быстро закачать большое количество файлов на хостинг или удалить их оттуда.

Все мы сталкиваемся с задачей, когда приходит время с локального сервера (я имею ввиду например ) переместить наш проект на сервер хостинг-провайдера. И хорошо, если наш сайт маленький. А если проект крупный, весом так-этак в Мегабайт 50… Вот тут-то и начинаются сложности. Просто соединиться с сервером при помощи каких-то программок, например Total Commander, и закачивать файлы копированием становиться весьма нетривиальной задачей. Время на загрузку файлов по одному с постоянным ожиданием ответа от удаленного сервера уйдет уйма. И, скорее всего, с первого раза скопировать все файлы не удастся – обязательно вылезет какая-нибудь ошибка и соединение оборвется, а потом разбирайся какие файлы попали на хостинг, а какие нет.

Тут-то нам и приходит на помощь тот самый Шелл.

Берем весь наш сайт на локальном хостинге и зажимаем его в zip-архив.
Во-первых, из 50 Мегабайт после сжатия останется около 15.
Во-вторых, один файлик-архив закачать на хостинг куда проще, чем весь проект. И при закачке одного файла ошибки, скорее всего, не возникнут.

Теперь остается распаковать архив на сервере. Сделать это можно при помощи программы PuTTY, которая пообщавшись с удаленной хостинг-машиной посредством протокола SSH распакует загруженный архив с такой-же быстротой, как вы распаковываете архивы на своем компьютере.

И так, устанавливайте PuTTY (скачать дистрибутив PuTTY) и вперед.

После установки и запуска программки вы увидите вот такое окно:

Все что вам нужно – это ввести адрес хоста для общения с сервером посредством Шелл. Этот адрес с логином и паролем вам должен был выслать хостинг-провайдер в электронном письме.

Для Мастерхоста, например данный адрес имеет вот такой вид: XXXXXX.ssh.masterhost.ru
Где XXXXXX – это ваш персональный идентификатор клиента Мастерхоста.

Вводим адрес в поле Host Name (or IP address) и нажимаем кнопку Open .

После этих нехитрых действий произойдет соединение с удаленной машиной посредством сетевого протокола SSH и вы увидите приглашение для ввода логина и потом пароля, которые вам также должен выслать по электронной почте хостинг-провайдер.

При вводе пароля не пугайтесь следующего обстоятельства:
никакие звездочки или точки, как принято в Windows, появляться не будут. Это вам Linux, господа и дамы. Курсор даже не сместиться с места. Но вы на это внимания не обращайте, а аккуратно вводите свой пароль и после ввода нажимайте Enter . Сделана данная штука для того, чтобы никто не смог подсмотреть количество символов в вашем пароле. Бред?
– Возможно. Linux, он такой, конфиденциальность превыше всего.

Если вы не ошиблись в пароле, то вы увидите слово Welcome!

После соединения вы находитесь в корневой папке своего хостингового пространства. Для того, чтобы посмотреть, какие еще папки и файлы присутствуют в корневой директории воспользуйтесь командой ls .

Перемещайтесь к нужной папке (в которую вы сохранили zip-архив с сайтом) командой cd .

Т.е. если в корне у вас лежит папка www и вы хотите в нее переместиться то вводите команду cd www/ и нажимаете Enter .

Для того, чтобы подняться на уровень вверх: cd ..

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

Когда вы находитесь в директории, содержащей архивный файл, то набираете команду unzip imya_faila.zip
Вместо imya_faila.zip нужно ввести имя архива с расширением.

Архив начинает весело распаковываться в ту же директорию, где он и находился.

Быстрое удаление файлов с хостинга

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

Вам нужно переместиться к директории, содержащей файлы или каталоги, которые вы хотите удалить (напомню, перемещаемся командой cd ).

После того как вы находитесь в директории, каталоги и файлы внутри которой вы собираетесь удалить, вводите следующие команды:

Для удаления файла команда rm imya_faila.xxx

Для удаления файла без лишних вопросов (а вы точно хотите его удалить или нет?) команда rm – f imya_faila.xxx

Для удаления каталога rm – r imya_kataloga/

В программе PuTTY для упрощения ввода имен файлов и каталогов реализована следующая функция:
Введите начало имени файла или каталога и нажмите Tab , PuTTY автоматически подставит недостающую часть имени.

Для выхода из программы используйте команду exit .

В эпоху деоффшоризации банки не могут позволить себе работать со всеми клиентами. Особенно остро эту тенденцию почувствовали клиенты-нерезиденты, которых пристальнейшим образом изучают отделы compliance всех международных банков. Одна из целей таких проверок – выяснить, не является ли юрлицо так называемой shell компанией .

Что такое shell компания?

Shell компания, говоря упрощенно, это юридическое лицо, которое не ведет реальной хозяйственной деятельности по месту регистрации, не имеет сотрудников и существует, де-юре, в виде папки с документами . Банки, проводя проверку юрлиц – потенциальных и действующих клиентов, выделяют три признака, при соответствии хотя бы одному из них фирму, скорее всего, признают shell компанией и процесс открытия на нее нового или обслуживание существующего счета усложнится (а вероятнее всего банк откажется от сотрудничества с такой компанией вообще).

Три признака shell компании: признак первый – юрисдикция регистрации

Если юридическое лицо зарегистрировано в стране, законодательство которой не предусматривает предоставления компаниями годовой отчетности – это может стать причиной признания фирмы shell компанией. Такими юрисдикциями сейчас являются все классические оффшоры, включая БВО, Белиз, Сейшельские острова. Также могут возникнуть дополнительные вопросы к компаниям формы LP (ограниченные партнерства).

Но есть еще одно условие: «родная» юрисдикция юрлица должна быть включена в утвержденный банком список «рисковых» юрисдикций. Каждый банк самостоятельно составляет перечень таких юрисдикций.

Признак второй: отсутствие substance

Фирма без офиса, персонала и партнеров не может вести реальной экономической деятельности. Учтите, что наличие почтового ящика или контактного номера не заменит офис и не обезопасит фирму от статуса shell компании. Банк обязательно попросит компанию предоставить договор аренды офиса. Важно также наличие реальных сотрудников, а в цифровую эпоху – и интернет сайта.

Иными словами, компании нужен substance , узнать больше об этом понятии вы можете по .

Признак третий: нет реальной хозяйственной деятельности

Юрлицо, не предоставившее в банк документальных доказательств реальной экономической деятельности будет признано shell компанией. Банк хочет понять, чем конкретно занимается компания, как она ведет дела, где совершается ее деятельность. Так как в наше время на слово банки не верят, все нужно доказывать документально. Такими подтверждениями могут быть, к примеру, договора с контрагентами или иные оформленные документально сделки, документы, подтверждающие платежи по договору и прочее.

Необходимо учитывать, что банки будут проверять все, что им предоставят и если в учреждении сочтут, что экономическая деятельность юрлица не значительна и не предоставляет ценности – ее признают shell компанией.

Пока что все вышеизложенное актуально, в первую очередь, для Латвии, где ФКТК (Комиссия рынка финансов и капитала) выпустила разъяснения и рекомендации по поводу работы с shell компаниями. Но нет сомнений, что такой подход станет глобальным: согласно предписаниям OECD, с 2019 года банки не смогут обслуживать структуры без substance. Так что самое время привести свои компании в порядок.

Шелл-код (англ. shellcode) - это часть кода, встроенного во вредоносную программу и позволяющего после инфицирования целевой системы жертвы получить код командной оболочки, например /bin/bash в UNIX-подобных ОС, command.com в черноэкранной MS-DOS и cmd.exe в современных операционных системах Microsoft Windows. Очень часто shellcode используется как полезная нагрузка эксплоита.

Шелл-код

Зачем это нужно?

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

Так что вредонос — это всего лишь способ попасть на машину и получить shell, то есть управление. А это уже прямой путь к сливу конфиденциальной информации, созданию ботнет-сетей, превращающих целевую систему в зомби, или просто выполнению иных деструктивных функций на взломанной машине.

Shellcode обычно внедряется в память эксплуатируемой программы, после чего на него передается управление при помощи использования программных ошибок, таких как переполнение стека или переполнение буфера в куче, или использования атак форматной строки.

Управление шелл-коду передается перезаписью адреса возврата в стеке адресом внедренного шелл-кода, перезаписью адресов вызываемых функций или изменением обработчиков прерываний. Результатом всего этого и будет выполнение шелл-кода, который открывает командную строку для использования взломщиком.

При эксплуатации удаленной уязвимости (то есть эксплоита) шелл-код может открывать на уязвимом компьютере заранее заданный порт TCP для дальнейшего удаленного доступа к командной оболочке. Такой код называется привязывающим к порту (англ. port binding shellcode).

Если же шелл-код подключается к порту компьютера атакующего (с целью обхода или просачивания через NAT), то такой код называется обратной оболочкой (reverse shell shellcode).

Способы запуска шелл-кода в память

Существуют два способа запуска шелл-кода в память на исполнение:

  • Метод position-independent code (PIC, позиционно независимый код) - это код, который использует жесткую привязку бинарного кода (то есть кода, который выполнится в памяти) к определенному адресу или данным. Шелл-код - это по сути PIC. Почему жесткая привязка так важна? Шелл не может знать, в каком именно месте оперативной памяти будет располагаться, поскольку во время выполнения различных версий скомпрометированной программы или малвари они могут загрузить шелл-код в разные ячейки памяти.
  • Метод Identifying Execution Location («Определяй свое место выполнения») заключается в том, что шелл-код должен разыменовать базовый указатель при доступе к данным в позиционно независимой структуре памяти. Добавление (ADD) или вычитание (Reduce) значений от базового указателя позволяет безопасно получить доступ к данным, которые входят в состав шелл-кода.
Понравилась статья? Поделитесь с друзьями!
Была ли эта статья полезной?
Да
Нет
Спасибо, за Ваш отзыв!
Что-то пошло не так и Ваш голос не был учтен.
Спасибо. Ваше сообщение отправлено
Нашли в тексте ошибку?
Выделите её, нажмите Ctrl + Enter и мы всё исправим!