четверг, 19 мая 2016 г.

Шпаргалочка по openvz \ virtuozzo

Шпаргалочка по openvz \ virtuozzo


vzctl create 1 --ostemplate centos-7-x86_64           - создать контейнер (ID=1) с предустановленной centos7 (образ качается и устанавливается из Интернета)
prlctl delete 2                                       - удалить контейнер (ID=2)
prlctl list -a                                        - вывести список всех контейнеров-виртуальных машин и их состояние (запущен остановлен приостановлен итд)
prlctl start 1                                        - запустить виртуальную машинку (ID=1)
prlctl stop 1                                         - остановить виртуальную машинку(ID=1)
prlctl enter 1                                        - зайти в машинку-контейнер для работы снутри
prlsrvctl net list                                    - показать сетевые адаптеры всей системы
vzctl set 1 --ram 1024M --swap 1056M --save           - задает ОЗУ и размер файла подкачки для машины (ID=1)
prlctl restart 1                                      - перезапуск виртуальной машины (ID=1)

vzctl set 1 --ipadd 192.168.0.1 --save                - добавить IP в машинку (ID=1)
vzctl set 1 --ipdel 192.168.0.1 --save                - удолить IP из машинки (ID=1)
vzctl set 1 --nameserver 8.8.8.8 --save               - добавить DNS в машинку (ID=1)

nano /etc/modprobe.d/parallels.conf  - поменять  ip_conntrack_disable_ve0=1 на  ip_conntrack_disable_ve0=0 , перезагрузить нужно для работы nat в iptables


iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE  - добавить это в /etc/rc.local   - разрешит виртуальным машинам выход в Интернет (если айпишники виртуалок лежат в пределах подсети 192.168.0.0/24 )
iptables -t nat -A PREROUTING -p tcp --dport 2245 -j DNAT --to-destination 192.168.0.1:22   - проброс 2245 порта с хоста на 22 гостя - чтоб можно было через Интернет зайти по ssh

среда, 13 апреля 2016 г.

ARP Spoofing в локальных сетях.

Недавно поставил перед собой интересную задачу - почитать переписку вконтакте того, кто сидит на публичном вайфае (например в торгово-развлекательном центре) рядом со мной.
Весь прикол заключается в том, что любое сетевое оборудование имеет свой аппаратный mac-адрес, и взаимодействие между железками в пределах локальной сети (компьютерами, маршрутизаторами, смартфонами) осуществляется на основе mac-адресов. Для этого у каждого устройства внутри хранится локальная таблица сопоставления IP и MAC. Когда мы пингуем ближнего своего, наш компьютер посылает широковещательный ARP - запрос, например "who has 192.168.0.93" и ему приходит ответ например ‎FC-AA-14-1C-FB-98.
Наша задача послать на устройство жертвы фальшивый ARP ответ (даже не ответ, а просто arp пакет) что IP роутера имеет MAC - адрес сетевого адаптера нашего ноутбука. Android и IOS устройства начинают сразу же гнать интернет через наш ноутбук!
Для этого необходимо воспользоваться утилитой arpspoof из пакета dsniff

Теперь представим ситуацию - мы сидим в ТРЦ с ноутбуком на публичном вайфае. Все клиенты находящеися рядом подключены к роутеру, который раздает всем интернет. Наша задача стать самому роутером и пустить весь чужой трафик через себя. 
Сидят в основном со смартфонов, а мобильное приложение ВК на андроид и ios по умолчанию не использует https (если не включить это в настройках).

... Начинаем
Первое что нужно сделать - изучить сеть в которой мы находимся. Нам нужно подсмотреть IP роутера и прикинуть диапазон IP-адресов которые выдаются клиентам. Это можно сделать исходя из полученых от роутера по DHCP настроек (ip шлюза и маска сети).
Затем при помощи nmap нужно просканировать сеть на наличие доступных хостов. На выходе мы получим список IP - адресов мобильных устройств, которые подключены к сети. Android и IOS устройства отлично пингуются будучи подключеными к сети, поэтому ограничимся ping-сканированием.

nmap -sP 192.168.0.0/24 

(если наша сеть 192.168.0.0 и маска 255.255.255.0)
в выводе nmap после сканирования кроме доступных IP подключеных клиентов будет еще и описание производителя железки с этим адресом. Eсли Samsung - это смартфон самсунг, Lenovo - леново, Apple - айфон \ айпад итд. 
Осмотревшись вокруг и заглянув что за мобильное устройство в руках у тех кто рядом можно догадаться какую жертву мы нашли.

Становимся роутером и нюхаем чужой трафик!
Тут ничего сложного нету.


echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -j MASQUERADE
arpspoof -i wlan0 -t 192.168.0.103 192.168.0.1



wlan0 - интерфейс который на нашем ноутбуке подключен к публичному вайфаю (можно посмотреть через ifconfig)
192.168.0.103 - айпи нашей жертвы, которая у нас на крючке
192.168.0.1 - айпи настоящего роутера (которым мы прикинемся)

Все! Трафик жертвы идет через наш ноутбук! 
Дальше необходимо запустить снифер tcpdump или wireshark на интерфейсе wlan0 в режиме декодирования http-трафика. Можно сразу сохранять все в файл или разгребать в реальном времени. Показывает адреса всех запросов клиента и их содержимое.

Самое важное я забыл - подготовка платформы для этого всего.
Нужно скачать последнюю версию Lubuntu например и записать при помощи ultraiso на флешку. Загрузить ноутбук с нее.
Затем нужно подключиться к вайфай сети и установить пакеты dsniff (предоставляет утилиту arpspoof) , nmap, tcpdump и (если хочется GUI) - wireshark, через apt-get.

В следующей статье я расскажу о перехвате и расшифровке зашифрованого https трафика пользователей.


среда, 6 апреля 2016 г.

Ебаный фрегат. Стыдно.
*здесь будут шуточки про PPPoE, MTU и MRU

Часть сайтов не будет работать если в роутере не зафигачить строчку

iptables -A FORWARD -o ppp0 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Если нужно на самом роутере держать прокси не забываем что это локальный трафик не транзитный

iptables -A OUTPUT -o ppp0 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

среда, 24 февраля 2016 г.

Доводим Windows 10 до ума.

1) Качаем и устанавливаем Windows 10 отсюда. Нам вполне подойдет X64FRE_RU-RU.ISO (3.75 гб). Это 64-битная система, при установке выбрать редакцию Home или Pro. Pro отличается сервером терминалов, инструментами управления групповыми политиками итд. Аналогична "максимальной" семерке. Если компьютер мощный - желательно ставить ее.
Подготавливаем установочную флешку при помощи UltraISO.
В BIOS можно отключить старый режим поддержки ос (CSM \ MBR) включить режим EFI. Я ставлю десятку в EFI режиме. Это более современный способ, когда BIOS обращается напрямую к файловой системе для загрузки ядра ОС, в отличие от старой модели с "загрузочным сектором". Это дает некоторые преимущества (о них как-нибудь потом).

При установке ПРОПУСКАЕМ все окна для ввода ключей (серийных номеров). Еще желательно выдернуть кабель интернета, чтобы ограничиться локальным аккаунтом (при наличии интернета инсталлятор будет вымагать для работы онлайн - аккаунт в облаке Microsoft). ОС уже "облачная".

Сразу после установки настраиваем соединение с Интернетом и идем в панель управления - обновления системы и ОБНОВЛЯЕМ. Нам предложено будет скачать новую сборку (Билд) Windows, на момент написания этой статьи от середины февраля 2016 года. Соглашаемся, ждем, перезагружаемся. После перезагрузки только что скачаная новая сборка будет установлена. Винда переустановиться с нуля, данные от предыдущего сетапа будут сохранены. После нескольких ребутов мы получим рабочий стол, снова идем в обновление системы, опять жмем на "поиск обновлений" и скорее всего получаем ответ что Windows уже обновлена и последней версии. На этом установка винды закончена. Имеем самую свежую ОС.

2) В репозитории 10 винды очень много драйверов для всех устройств и они обновляются вместе с операционной системой через Windows Update. Открываем диспетчер задач и убеждаемся, что все в порядке, все оборудование настроено и готово к работе. Если чего-то не хватает, ищем на сайте производителя железа драйвера, можно и в гугле по DevID. Кстати, подходят драва от семерки и восьмерки. Если нету под 10 (что странно).

3) Винда с дравами установлена - самое время ее крякнуть. Неактивированая винда не даст себя кастомизировать, будет ставить страшные обои и ругаться что она нелегальная. В роли кряка отлично подойдет KMS.NET Auto последней версии. Взять можно тут.
Встроеный в Windows антивирус (защитник Windows - сразу же ругнется на активатор. Поэтому на время активации его желательно выключить (в его окошке жмем на шестеренку настроек и там выключаем.

4) Подчищаем следы - после повторной установки системы у нас будет на диске C: папочка Windows.OLD , c копией старой винды (которая была установлена с флешки, до обновления). Открываем свойства диска, жмем на кнопку "очистка диска", далее на "очистить системные файлы" и ставим галочку на "предыдущие версии Windows" или типа того. После этого папка Windows.OLD пропадет.

На этом установка закончена, все железо работает как надо, драйвера установлены, винда обновлена и активирована (лицензирована). Все вроде бы работает, но выглядит страшно. Теперь самое время заняться кастомизацией.


Часть 2. Кастомизация Windows.

1) Ставим нескучные обои. Для этого в гугле вбиваем чтото типа "windows 7 default wallpaper" и попадаем сюда. Сохраняем это в положеную папку (C:\Windows\Web\Wallpaper) рядом с другими обоями, затем открываем свойства рабочего стола и ставим картинкой. Можно заюзать обоину от стартовой семерки (starter windows 7 wallpaper), у нее нецветные окошки, можно вообще без окошек (logoless).

2) Возвращаем стандартное меню Пуск - для этого достаточно установить бесплатную программу ClassicShell. (качать с сайта русскую версию). Таких программ хватает, ближайший коммерческий конкурент Start8. Поставить, крякнуть и идти дальше.
Можно кликнуть правой кнопкой по меню пуск, выбрать там "Настройки" и настроить внешний вид меню пуск и кнопки пуск.

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

 4) Отключаем ненужные свистоперделки и сглаживание шрифтов (чтоб шрифты были не говно - вернем Тахому!).
Идем в свойства системы - дополнительно - быстродействие, ставим напротив обеспечить наилучшее быстродействие. После этого ставим две галки - отбрасывание теней значками на рабочем столе и отображать содержимое окна при перетаскивании. Применяем.
Идем в реестр и хардкорно вырубаем сглаживание шрифтов заменой некоторых ключей (описано тут).
В браузере google chrome нужно сходить на вкладку chrome://flags/ и врубаем опцию "отключить DirectWrite - рендеринг шрифтов". Насчет FireFox не знаю, не стоит у меня, но там тоже что-то было по-моему в about:config , надо гуглить.

5) Подчищаем автозагрузку - чтоб в трее не висели утилиты которые установились с драйверами, обдумано вычищаем ересь и веток автозагрузки реестра (HKCU/Software/Microsoft/Windows/Current Version/Run) , (HKLM/Software/Microsoft/Windows/Current Version/Run).
В настройках панели задач переходим в область уведомлений и ставим отображать все значки в панели уведомлений, а включении и выключении системных значков отключаем "центр уведомлений".

Для параноиков есть софт который удоляет из винды шпионские модули. Например тут.

 Перезагружаемся. Можно работать.



четверг, 24 декабря 2015 г.

Восстанавливаем работу VirtualBox на Windows 7 nano от Lopatkin

Восстанавливаем работу VirtualBox на Windows 7 nano от Lopatkin

Буквально вчера я хвастался минималистичной сборкой Win7 от Лопаткина.
Установочный дистрибутив весит около 860 мб, после установки она занимает 1.7 гб на HDD
Все бы хорошо. Но не работает VirtualBox.
При запуске машины пишет ошибочку

Проблема заключается в том, что любители клепать сборки винды патчат uxtheme.dll и службу тем для расширения возможности украшательств ос. Не обошла эта беда и Лопаткина. Во вред функционалу.
Решение оказалось простым - скачать оригинальный образ Windows 7 Professional RU и установить ее смонтировать образ в виртуальный привод (при помощи Ultraiso), найти в образе файл E:\Sources\install.wim, открыть его при помощи 7-zip и извлечь из пути /windows/system32 три файла themeservice.dll themeui.dll uxtheme.dll

Эти файлы нужно поместить в папку C:\Windows\System32 нашей работающий операционной системы.
И - вуаля: Виртуалбокс ожил и готов к работе :)

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

И на всякий случай выкладываю на свой гуглдрайв архив с этими файлами
https://drive.google.com/file/d/0B0Ec7812cp1tWThqTDlwS3dLMjA/view?usp=sharing

И вот, результат налицо:


Ну и конечно же разработчикам виртуалбокса виднее, зачем юзать подсистему отрисовки тем в своем поделии.

четверг, 10 декабря 2015 г.

Некоторые приемы, которые я буду юзать при постройке роутера

пыха - узнаем ип интерфейса для заворота трафика в него и айпи юзера

<?php
$route_ukr = exec("sudo ifconfig ppp0 | awk -F ' *|:' '/inet addr/{print $4}'");
$ip_user= $_SERVER['REMOTE_ADDR'];
echo $route_ukr;
echo $ip_user;

выполняем по команде

exec('sudo iptables -t mangle -D PREROUTING -s ' . $ip_user . ' ! -d 192.168.7.0/24 -j MARK --set-mark 1');
exec('sudo iptables -t nat -A POSTROUTING -s ' . $ip_user . '  -j SNAT --to-source ' . $route_ukr .' ')

bash scr

#!/bin/sh
ip=$(ifconfig tun0 | awk -F ' *|:' '/inet addr/{print $4}')
iptables -t nat -I POSTROUTING 1 -o tun0 -j SNAT --to-source $ip


/CHECKER RECONNECTER

#! /bin/bash

wget --spider http://ya.ru
if [ "$?" != 0 ]; then
  echo `date` >> /root/reconnect.log
  /usr/bin/poff dsl-provider
  sleep 10
  /usr/bin/pon dsl-provider
fi


//p-t-p route

ifconfig ppp0 | grep -o -E "P-t-P:([0-9]+\.){3}([0-9]+)" | sed 's/P-t-P://g'


фикс от Вани
exec('sudo iptables -t nat -A POSTROUTING -s "' . $ip_user . '"  -j SNAT --to-source "' . $route_ukr .' "')

кое что из рабочих конфигов

#!/bin/sh
ip=$(ifconfig tun2 | awk -F ' *|:' '/inet addr/{print $4}')
iptables -t nat -I POSTROUTING 2 -o tun2 -j SNAT --to-source $ip
/bin/ip route add default dev tun2 table US    <-- DEFAULT GW на интерфейс :)//
iptables -t mangle -A OUTPUT -p tcp -m tcp ! --sport 1095 -m owner --uid-owner 1003 -j MARK --set-mark 5
ip rule add fwmark 5 table US

echo "nameserver 192.168.7.1" > /etc/resolv.conf


среда, 25 ноября 2015 г.

Защита от далбаеба - баним exe файлы и архивы на скачку во всех браузерах

1) Качаем последнюю версию сквида под windows
отсюда http://squid.diladele.com
2) Приводим C:\Program Files\Squid\etc\squid\squid.conf  к понятному виду

http_port 127.0.0.1:3128
dns_nameservers 109.86.2.2 8.8.8.8 8.8.4.4 192.168.0.1
cache_mgr nallion.work@gmail.com
acl all src all
acl CONNECT method CONNECT
acl localcomp src 127.0.0.1/32
acl badfiles url_regex -i \.exe$ \.msi$ \.zip$ \.rar$ \.7z
http_access deny localcomp badfiles
http_access allow localcomp
http_access deny all
Учтите, что в опции dns_nameservers надо прописать днсы прова \ гугла \ своего роутера.
Если не знаете что туда писать - пишите IP роутера (обычно 192.168.0.1) или 8.8.8.8 8.8.4.4
Можно и то и то
Директива cache_mgr - емейл для ласкания своего чсв на страничке с ошибкой. При желании страничку можно переработать \ украсить своим фото итд - для этого проследуйте по адресу C:\Program Files\Squid\usr\share\squid\errors\ru-ru для правки html-файла.

3) Перезапускаем службу Squid (в трее есть иконка по ней левой кнопкой stop squid service - start squid service)
4) Во всех браузерах ставим юзать http(s) прокси 127.0.0.1:3128

... при попытке скачать любой файл с расширением \.exe$ \.msi$ \.zip$ \.rar$ \.7z  любым браузером любуемся




... а еще можно просто установить расширение в google chrome

https://chrome.google.com/webstore/detail/exe-blocker/gpmojgdifdieilleikodmnkeeefihpob