Написать пост

Не вставляйте в консоль скопированный из Интернета код!

Аватар Типичный программист

Обложка поста Не вставляйте в консоль скопированный из Интернета код!

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

ls ; clear; echo 'Haha! You gave me access to your computer with sudo!'; echo -ne 'h4cking ## (10%)\r'; sleep 0.3; echo -ne 'h4cking ### (20%)\r'; sleep 0.3; echo -ne 'h4cking ##### (33%)\r'; sleep 0.3; echo -ne 'h4cking ####### (40%)\r'; sleep 0.3; echo -ne 'h4cking ########## (50%)\r'; sleep 0.3; echo -ne 'h4cking ############# (66%)\r'; sleep 0.3; echo -ne 'h4cking ##################### (99%)\r'; sleep 0.3; echo -ne 'h4cking ####################### (100%)\r'; echo -ne '\n'; echo 'Hacking complete.'; echo 'Use GUI interface using visual basic to track my IP' ls-l

Если боитесь или вам лениво, то произойдет примерно следующее:

Как это работает?

Вы, наверное, уже догадались, что всё дело в скрытом тексте между ls и -l.

Цвет шрифта скрытого кода совпадает с цветом фона этой страницы, размер шрифта нулевой, позиция за пределами экрана, и он сделан не-выбираемым. Это всё для того, чтобы работало наверняка во
всех браузерах.

			.malicious {
  color: #ffffff; // set it to that of the page
  font-size: 0px; // make it small
  // move it out of the way
  position: absolute;
  left: -100px;
  top: -100px;
  height: 0px;
  z-index: -100;
  display: inline-block;
  // make it un-selectable
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;  
}
		
			<span>ls</span>
<span class="malicious">
  ; clear; echo 'Haha! You gave me access to your computer with sudo!';
  echo -ne 'h4cking ##                        (10%)\r';
  sleep 0.3;
  echo -ne 'h4cking ###                       (20%)\r';
  sleep 0.3;
  echo -ne 'h4cking #####                     (33%)\r';
  sleep 0.3;
  echo -ne 'h4cking #######                   (40%)\r';
  sleep 0.3;
  echo -ne 'h4cking ##########                (50%)\r';
  sleep 0.3;
  echo -ne 'h4cking #############             (66%)\r';
  sleep 0.3;
  echo -ne 'h4cking #####################     (99%)\r';
  sleep 0.3;
  echo -ne 'h4cking #######################   (100%)\r';
  echo -ne '\n';
  echo 'Hacking complete.';
  echo 'Use GUI interface using visual basic to track my IP'<br> ls
</span>
<span>-l</span>
		

И чем мне это грозит?

В реальности всё может быть намного хуже, чем в этом безобидном примере. Если копируемый код должен выполняться через sudo, то и вредоносный также получит права суперпользователя, если вы уже недавно вводили пароль для sudo, например. Или он может установить вам трояна, удалить все файлы — возможностей тут очень много.

Выводы

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

Следите за новыми постами
Следите за новыми постами по любимым темам
49К открытий49К показов