Как быть если к вам уже пришли?!

Как быть если к вам уже пришли?!  

  By: SleepWalker on 2016-08-16 13 ч.

Как быть если к вам уже пришли?!

Как быть если к вам уже пришли?!

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

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

Позвольте представить - Time

-------

Краткое описание:

Будучи запущенной на выбранный вами промежуток времени с определенным хешем(для безопасности) она произведет необходимую вам команду в случае если вы не введет пароль(который будет преобразован в хеш и сравнен с изначальным) в определенный файл. Это же то, что нужно.
Работает только на ОС Linux, может быть MacOS.

Примеры использования:

chmod a+x time ;Делаем программу исполняемой

./time hash 12345 ;Создаете хеш пароля для использования в дальнейшем в программе и да если вы не хотите, чтобы команда эта сохранилась в истории bash просто добавьте в начало ее пробел. Думаю все это знают, но все же.
Выдается подобный хеш - 8CB2237D0679CA88DB6464EAC60DA96345513964

./time --help ;Помощь

sudo ./time make 30 "shutdown -h now" 8CB2237D0679CA88DB6464EAC60DA96345513964 &
Желательно запускать через sudo, так как тогда процесс будет скрыт от обычного пользователя. Также необходимо запускать, как демон с помощью & для того, чтобы его нельзя была закрыть ctrl+c в том же терминале.
Команда запускает цикл в процессе которого по истечении 30 минут выведет сообщение и даст вам минуту на заполнение пароля в файл time.txt.

echo "12345" > time.txt ;Вводим пасс в файл. Запускаем с пробелом в начале.

Затем файл будет удален и программа снова вернется к циклу на следующие 30 минут. Можно использовать любую команду вместо shutdown, например затереть весь жесткий диск или специально выбранные ключи от контейнеров.


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

sudo systemd-inhibit --what=handle-lid-switch sleep 1d &
Теперь при закрытии ноута временно ничего не будет происходить.

Прикладываю исходный код на языке Nim и саму программу, скомпилированную для x86 Linux.

import docopt, strutils, os, securehash

let
  doc = """
TIME

Do something every time if you don't type your password
Run as root and with & in the end of command
and your security will be great!!

Usage:
  time make <time> <command> <hash>
  time hash <string>
  time --help
  time --version

"""

type CtrlCException = object of Exception

proc handler() {.noconv.} =
  raise new CtrlCException

setControlCHook(handler)

 
proc test(str,str2: SecureHash) : bool =
  if str == str2:
    return true
  else:
    return false

proc wait_for_input(time: int, hash,cmd : string) =
  var
    t = time
    good = false

  while t != 1000:
    var l = execShellCmd("touch time.txt")
    sleep(1000)

    write(stdout, ".")
    flushFile(stdout)
   
    var str = readFile("time.txt")
    var strs = splitLines(str)
   
    if test(secureHash(strs[0]),parseSecureHash(hash)):
      good = true
     
    t = t - 1000

  if good:
    echo("<<*****>>")
    var l = execShellCmd("rm time.txt")
   
  else:
    var l = execShellCmd(cmd)
    if l == 0:
       echo("___")
    else:
       echo("Not valid command")
   
 
proc timedo(num: int, cmd, hash : string) =
  while true:
    sleep(num*10000*6)
    echo("<< It's time to stop this << ")
    wait_for_input(60000, hash, cmd)
   


let args = docopt(doc, version = "time 1.0")

 
if args["hash"]:
  let
    str = $args["<string>"]
  echo(secureHash(str))

if args["make"]:
  let
    num = $args["<time>"]
    num2 = parse_int(num)
    cmd = $args["<command>"]
    hash = $args["<hash>"]
  echo("{{hide process}}")   
  var l = execShellCmd("mount -o remount,rw,hidepid=2 /proc/")
  echo("{{make time undeletable}}")
  var l3 = execShellCmd("chattr +i time")
  try:
    timedo(num2,cmd,hash)
  except CtrlCException:
      echo("{{restore process}}")
      var l2 = execShellCmd("mount -o remount,rw,hidepid=0 /proc/")

Редактировался SleepWalker (2016-08-16 13 ч.)

 Вложения

Как быть если к вам уже пришли?!  

  By: NI on 2016-08-16 14 ч.

Re: Как быть если к вам уже пришли?!

Огонь, ты как всегда на высоте :up:

echo("<<*****>>")

:)

Как быть если к вам уже пришли?!  

  By: Stepan on 2016-08-16 15 ч.

Re: Как быть если к вам уже пришли?!

Стесняюсь спросить, что можете подобного для компутеров на виндовс подсказать?


Собака смотрит на палку, а лев на того, кто её кинул.
E-mail: [email protected]

Как быть если к вам уже пришли?!  

  By: heterochromia on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

Stepan, выкинуть компутер на виндовс сразу  :idk:

 Вложения

Как быть если к вам уже пришли?!  

  By: Северус on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

Проще работать за закрытыми дверями. А в общественном месте можно носить радиометку в кармане. Сигнал потерян - power off.

SleepWalker пишет:

Команда запускает цикл в процессе которого по истечении 30 минут выведет сообщение и даст вам минуту на заполнение пароля в файл time.txt.

Слишком много времени. Если работает специалист, запустят тулзу которая делает дамп оперативки, а содержимое диска после в любой момент разберут. Elcomsoft поставляет мусорам готовый набор софта для этого, правда он под Windows.

Как быть если к вам уже пришли?!  

  By: SleepWalker on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

Северус пишет:

Проще работать за закрытыми дверями

Это само собой.

Северус пишет:

Слишком много времени.

Собственно можно поставить любой период времени. 30 минут это лишь для примера. Выбираем в зависимости от ситуации.

Как быть если к вам уже пришли?!  

  By: Stepan on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

heterochromia, ну не надо быть настолько предсказуемым. :)


Собака смотрит на палку, а лев на того, кто её кинул.
E-mail: [email protected]

 Вложения

Как быть если к вам уже пришли?!  

  By: Северус on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

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

Редактировался Северус (2016-08-16 17 ч.)

Как быть если к вам уже пришли?!  

  By: SleepWalker on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

Северус, Имеешь ввиду если есть доступ к системе? Если же блокирован экран и это линукс, то может и сгодится. Я так использую.

Редактировался SleepWalker (2016-08-16 17 ч.)

Как быть если к вам уже пришли?!  

  By: Северус on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

SleepWalker пишет:

Имеешь ввиду если есть доступ к системе?

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

Хорошее решение было бы датчик жопы на стуле с беспроводной связью с компом. Встал больше чем на 10 секунд - всё лочится и требует пароль. Отошел больше чем на 10 минут - в хибернейт.

Редактировался Северус (2016-08-16 17 ч.)

Как быть если к вам уже пришли?!  

  By: Trepet on 2016-08-16 17 ч.

Re: Как быть если к вам уже пришли?!

Северус, я тут очередной скрипт пишу как раз по теме, чтоб ничего лишнего не воткнуть и ничего нужного вынуть без последствий было нельзя. Не хочешь поучаствовать в тестировании? ;)

 Вложения

Как быть если к вам уже пришли?!  

  By: Северус on 2016-08-16 18 ч.

Re: Как быть если к вам уже пришли?!

Trepet, через udev работает? Под Debian?
Я пока еще не дошел до того чтобы составлять вайтлист устройств, бывает нужно подключить что-то новое.

Как быть если к вам уже пришли?!  

  By: Trepet on 2016-08-16 18 ч.

Re: Как быть если к вам уже пришли?!

Северус пишет:

через udev работает?

Да.

Северус пишет:

Под Debian?

Везде где udev есть.

Северус пишет:

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

Так собсно скрипт и составляет вайтлист, упрощает сам процесс. Основную часть делает udev.

Как быть если к вам уже пришли?!  

  By: Северус on 2016-08-16 18 ч.

Re: Как быть если к вам уже пришли?!

Скинь в ЛС, потестирую. Полезная вещь.

Как быть если к вам уже пришли?!  

  By: berlioz on 2016-08-16 19 ч.

Re: Как быть если к вам уже пришли?!

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

Как быть если к вам уже пришли?!  

  By: smkwd on 2016-08-16 19 ч.

Re: Как быть если к вам уже пришли?!

Северус, речь о firewire?А можно подробнее как данные при помощи него получают?

Как быть если к вам уже пришли?!  

  By: Северус on 2016-08-16 20 ч.

Re: Как быть если к вам уже пришли?!

smkwd пишет:

Северус, речь о firewire?А можно подробнее как данные при помощи него получают?

Да, про него.
https://blogs.gnome.org/muelli/2010/04/reading-ram-using-firewire/
https://www.breaknenter.org/projects/inception/

Есть готовый софт и для чтения памяти и для разлочки залоченного. В том числе есть проги для ментов от Elcomsoft, которые все делают.

Как быть если к вам уже пришли?!  

  By: Stels11 on 2016-08-17 07 ч.

Re: Как быть если к вам уже пришли?!

SleepWalker пишет:

Как быть если к вам уже пришли?!

Если уже пришли, то поздно пить боржоми :trollface:

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

Для мусоров, которые решили брать вас настолько внезапно, что вы даже не успели ткнуть кнопку выключения/захлопнуть крышку, 30 минут будет более чем достаточно. А если поставить меньше - то сам заебешся пароль вводить.

А решение этой проблемы уже давно есть - имобилайзер, например https://www.sharepoint-project.ru/blocker/princip.html (видел и более продвинутые, но чет не нагуглилось сейчас) и стоит копейки. Но требует дороботки (впаивания приемника внутри корпуса).
Для надежности под рубаху с длинными руковами надиваем браслет, к нему цепляем этот брелок, даже если вас прижали, 1 движение для нажатии кнопки вы все равно сделаете. Но расчет, конечно же в первую очередь на удаление 2-10 метров от вашего пк.

Редактировался Stels11 (2016-08-17 07 ч.)

 Вложения

Как быть если к вам уже пришли?!  

  By: sektor on 2016-08-17 07 ч.

Re: Как быть если к вам уже пришли?!

Северус, поддерживаю насчет хардварного решения задачи, с дивана видится такое:
Работаешь с открытыми криптоконтейнерами - они на флешке(копии в облаках).
Необходимо пресечь снятие дампа оперативной памяти, и оперативно отключить систему для закрытия доступа к открытым контейнерам.
Решение - тонкая леска от запястья к магниту(или просто диэлектрик между контактов) - магнит размыкает проводники кнопки reset пк которые подпаяны к геркону(для ноутбука кнопка power даст примерно тоже самое - 5 секунд и ресет опять 5 секунд и ресет), что даст сброшенную в "0" оперативную память.
Также можно доработать флешку и в корпус включить части от usb зажигалки, при поднятии рук(выдергивании лески) чтобы шел контакт на нагревательный элемент, и микросхема памяти "поджаривалась".
Уже описывалось 1 раз мной, но не так комплексно вроде.

Как быть если к вам уже пришли?!  

  By: Stels11 on 2016-08-17 07 ч.

Re: Как быть если к вам уже пришли?!

sektor пишет:

Также можно доработать флешку и в корпус включить части от usb зажигалки, при поднятии рук(выдергивании лески) чтобы шел контакт на нагревательный элемент, и микросхема памяти "поджаривалась".
Уже описывалось 1 раз мной, но не так комплексно вроде.

Сразу захуяривай в корпус тратиловую шашку, заодно от допросов спасет и мусорам позорным отомстишь :trollface:

 Вложения