среда, 19 июня 2019 г.

Мессенджер BitMessage

Описание и принцип работы

BitMessage - протокол обмена текстовыми сообщениями средствами распределённой криптографической сети.
Как и в случае с Bitcoin в роли серверов хранения и распределения информации выступают сами участники сети. Это значит, что никто не может удалить “неугодные”, или “запрещённые” материалы, т.к. не известно кто их создал, в каком именно месте они лежат и кому они предназначаются.

Поднимаем анонимный веб-ресурс в TOR

Зачем вам это?

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

пятница, 31 мая 2019 г.

Даркнет переходит с Tor на I2P

Успех правоохранительных органов в деанонимизации пользователей Tor вынудил киберпреступников искать для осуществления своей деятельности альтернативные платформы. По данным ZDNet, как минимум одна подпольная торговая площадка уже мигрировала с Tor на Invisible Internet Project (I2P).
Сайт по продаже незаконных товаров Libertas Market стал первой подпольной торговой площадкой, полностью отказавшейся от Tor в пользу I2P. «Сеть Tor не подходит для скрытых сервисов из-за наличия в ней уязвимостей, позволяющих осуществлять атаки отказа в обслуживании. Эти уязвимости позволяют правоохранительным органам определять, каким скрытым сервисам разрешено работать, и являются ли они легальными», - сообщила администрация ресурса на своем уже закрытом сайте в Tor.

четверг, 30 мая 2019 г.

Поиск фразы по всем текстовым файлам в каталоге Linux

Если вкратце, то:
grep -rn word /directory
Теперь подробнее. Что такое grep, вы, скорее всего, уже знаете. Эта утилита используется как фильтр вывода текстовой информации в консоли.
-r — grep обойдёт каталог рекурсивно
-n — grep выведет номер строки в результатах
word — указываем слово, которое ищем
/directory — указываем директорию. Например /home/$user/docs

Несколько примеров:
inky@support68:~$ grep -rn word /home/inky/docs/
/home/inky/docs/doc1.txt:11:some word here
В 11й строке файла /home/inky/docs/doc1.txt содержится слово word (после 11: выводится сама строка)
inky@support68:~$ grep -rn «few words» /home/inky/docs/
/home/inky/docs/doc1.txt:19:few words here
В 19й строке файла нашлось словосочетание few words.

Ну и пример с egrep:
inky@support68:~$ egrep -rn ‘(word1|word2|word3)’ /home/inky/docs/
/home/inky/docs/doc1.txt:20:word1
/home/inky/docs/doc1.txt:21:word2
/home/inky/docs/doc1.txt:22:word3
Мы искали word1 или word2 или word3. В 20й строчке нашлось word1, в 21й — word2, в 22й — word3.
grep -R config /etc/ #найдет все где есть кусок config(например fontconfig,configure)
grep -Rw config /etc/ #найдет все где есть только config
grep -Rwh config /etc/ #выведет найденные результаты без вывода файлов, в которых они найдены
grep -Rwl #только файлы , в которых есть совпадения

вторник, 28 мая 2019 г.

Операционная система Hello World!

Итак, берем свой любимый компьютер и нажимаем самую большую кнопочку на системном блоке. Видим веселую заставку, системный блок радостно пищит спикером и через какое-то время загружается операционная система. Как вы понимаете, операционная система хранится на жёстком диске, и вот тут возникает вопрос: а каким же волшебным образом операционная система загрузилась в ОЗУ и начала выполняться?

понедельник, 13 мая 2019 г.

Этапы загрузки операционной системы

Linux может загружаться как через специализированный загрузчик (GRUB, Syslinux, LILO, Das U-Boot), так и через boot sector, рассмотрим второй случай:

  1. boot sector записывает свой код в 9000h
  2. Загружает с диска Setup, который находится в нескольких последующих секторах (9000h:0200h;)
  3. Загружает ядро в 1000h. Ядро так же следует после Setup. Ядро должно быть меньше 508 килобайт
  4. Управление передается Setup
  5. Setup проверяется на корректность
  6. С помощью BIOS определяется оборудование, размер памяти, наличие жестких дисков, наличие шины Micro channel bus, PC/2 mouse, Advanced power management, инициализируются клавиатура и видеосистема
  7. Процессор переводится в защищенный режим
  8. Управление передается ядру
  9. Ядро переписывается по адресу 100000h (если оно было заархивировано, то оно предварительно разархивируется)
  10. Управление передается ядру
  11. Активируется страничная адресация
  12. Происходит инициализация IDT и GDT, при этом в кодовый сегмент и в сегмент данных ядра входит вся виртуальная память
  13. Инициализируются драйвера
  14. Управление передается процессу init;
  15. init запускает все остальные необходимые программы в соответствии с файлами конфигурации(init.X);

Теперь рассмотрим загрузку Windows (NT, так как ранние версии устарели):

  1. boot sector загружает NTLDR
  2. Процессор переходит в защищенный режим;
  3. Делаются таблицы страниц
  4. Механизм преобразования страниц;
  5. Чтение boot.ini, используя код FS под названием read only. Выводит на экран выбор загрузки ОС (из boot.ini)
  6. Из boot.ini считывается адрес директории Windows
  7. Управление получает ntdetect.com, определяющий устройства, установленные на компьютере
  8. Из %dir%\system32 загружается ntoskrnl.exe, в котором находится ядро.
  9. Управление передается hal.dll с информацией об аппаратном обеспечении;
  10. Загружаются драйвера и важные файлы
  11. Стартует графическая оболочка и пр.