FAQ #196. Отвечаем на ваши вопросы!
Как побороть ошибку explorer.exe «интерфейс не поддерживается» в Windows 7?
Обычно, когда подобная ошибка возникает, проблема оказывается в библиотеках DLL. Чтобы ее устранить, нужно их все перерегистрировать. Для этого нужно запустить командную строку от имени админа и там выполнить:
Таким образом мы скопируем все пути до библиотек в батник. Теперь посмотрим, что у нас в path:
Вывод команды сохрани себе в текстовый файлик и вводи:
После смены путей выполняем
Если винда ругается «Системе не удается найти указанный путь», вводим
Откроем в Notepad наш батник и в файле заменяем все вхождения C:\ на
Сейвимся и запускаем regdll.bat. Перерегистрация будет идти долго, может виснуть, выдавать гору ошибок, в совсем тяжелом случае — убивать процессы Regsvr32, а в 64-битной системе — еще и Regsvr32 *32. После того как закончит, ввести path со своими параметрами, которые ты ранее сохранял. Также часто бывает, что не выходит открыть консоль или сохранить батник, пробуй загружаться в безопасном режиме и запускать процессы через диспетчер задач.
Как можно быстро декодировать в консоли тот же Base64?
Для этого можно воспользоваться командой вида
Подобным образом можно совершить обратное действие, то есть закодировать нужную тебе строку:
Как видишь, ничего сложного, а написав простенькую обертку на том же питоне - можно еще быстрее делать подобные преобразования, не обращаясь к различным онлайн-декодировщикам.
Есть ли приложение под смартфон, которое смогло бы решать уравнения?
В принципе — да, есть такое, даже пара. Вот, к примеру, в MyScript Calculator можно рисовать формулу самостоятельно, и, как заявляет разработчик, после этого приложение начинает делать свою магию преобразования символов и чисел в цифровой текстовый формат и предоставляет результат в реальном времени. Из поддерживаемых операторов есть:
Не менее интересно приложение PhotoMath, оно позволяет решать уравнения простым наведением камеры на формулу. Разработчики постоянно что-то улучшают и увеличивают функционал приложения, но особых чудес не жди. Особенно если у тебя пошел второй год вышки или чего похлеще.
Хакер #196. Все о DockerКак подсчитать контрольную сумму диска после записи?
Для этого достаточно воспользоваться подобной командой:
Или можно воспользоваться утилитой dd:
В случае записи DVD нужно сделать дополнительное действие. Связано это с тем, что при записи на DVD пишется также и служебная информация, поэтому для проверки DVD-дисков утилитой dd нужно точно указывать размер и количество блоков. Для того чтобы узнать, сколько значимых блоков (extents) имеется в ISO-образе, выполняем:
Результатом будет число блоков, это число мы подставим в команду dd. Допустим, мы получили 159381, тогда команда будет выглядеть вот так:
При подключении к Windows-шаре по сети выдает error 0x80070043. Как с этим бороться?
Я рекомендую сделать следующее. Открывай regedit и находи там следующую ветку реестра:
Нам нужно отредактировать параметр ProviderOrder:
Сохраняемся, если не помогло, то идем дальше. Открывай gpedit.msc, а там заходи в
Нас интересует настройка
Устанавливаем ее в Enabled и перезагружаемся.
Какой тулзой можно зайти на сайт и сделать принтскрин?
Лично мне очень нравится для этих целей WkHtml, который ставится давно привычными командами:
Тулзу очень удобно использовать в разных скриптах - есть много различных настроек. Если вдруг тебе по какой-то причине не понравится эта тулза, вот список аналогов:
Поставил на ноут Ubuntu, теперь не понимаю, работает ли у меня блютуз или нет, а нужно подключить мышь и клаву. Что делать?
Попробуй поставить BlueMan, он есть в репозитории:
Если BlueMan наотрез отказывается видеть адаптер, выполни в консоли:
Сначала мы устанавливаем модуль для работы с Bluetooth, затем выставляем пароль для подключаемых устройств, потом стартуем демон, и остается отсканировать на наличие Bluetooth-устройств. После установки модуля можно рулить блютузом из консоли или через оболочку, что тебе больше нравится.
Как можно запускать немодифицированные бинарные пакеты Linux под Windows?
Попробуй для этих целей воспользоваться Foreign Linux — это динамический двоичный транслятор и эмулятор, позволяющий запускать немодифицированные бинарные пакеты Linux под Windows без использования драйверов или модификаций, реализуя тем самым совершенно иной подход, чем в Cygwin и других инструментах. На данный момент в FLinux доступны следующие инструменты:
- базовые утилиты: Bash, Vim, nano;
- среды разработки: Python, GCC;
- менеджер пакетов: pacman;
- игры для терминала: vitetris, nethack;
- утилиты для работы с сетью: wget, cURL, SSH;
- приложения среды X: xeyes, xclock, glxgears.
Как подключиться по RDP к винде из Linux, чем лучше, удобнее?
Лично я использую для этих целей два инструмента. Первый — это remmina, ставится из репозитория, имеет много разных плагинов, которые можно доставить:
Имеет простенький, ничем не нагруженный интерфейс, весьма проста в управлении. И второй — вечно молодой rdesktop, про который не слышал только живущий в бункере. Синтаксис примерно такой:
Здесь, помимо подключения к удаленному рабочему столу, мы еще подцепляем домашнюю папку, что, бывает, пригождается в работе. Кто-то скажет, что это неудобно, но поверь — это дело привычки, алиасов и забинденных скриптов на хоткеи.
Какие есть бесплатные аналоги Windows Access под убунту?
В качестве аналогов могу предложить следующие пакеты:
Также в случае, если тебе нужно открывать с сетевого ресурса базу и вносить в нее данные или выводить отчеты на экран плюс использовать VBA, присмотрись к этим решениям:
Какие крутые книжки можешь посоветовать почитать по пентесту?
Самый must have, по моему мнению, — это «The Web Application Hacker’s Handbook: Discovering and Exploiting Security Flaws». Помимо необходимых основ, описана методология тестирования веб-приложения, что вкачает тебе определенное количество скиллов по теме. А в общем — держи ссылки с топом хаккниг: раз и два. Отчасти они повторяются, но есть и различия. Есть много чего интересного, что обязательно должно не только занять твою полку, но и пополнить запас знаний.
Недавно узнал о так называемых boot2root-образах. Можешь подкинуть парочку?
Легко! Для разминки и начала можно посмотреть на проект bWAPP, в нем сосредоточено просто громадное количество различных багов. Смотри сам:
- SQL, HTML, iFrame, SSI, OS Command, XML, XPath, LDAP and SMTP injections
- Blind SQL and Blind OS Command injection
- Bash Shellshock (CGI) and Heartbleed vulnerability (OpenSSL)
- Cross-Site Scripting (XSS) and Cross-Site Tracing (XST)
- Cross-Site Request Forgery (CSRF)
- AJAX and Web Services vulnerabilities (JSON/XML/SOAP/WSDL)
- Malicious, unrestricted file uploads and backdoor files
- Authentication, authorization and session management issues
- Arbitrary file access and directory traversals
- Local and remote file inclusions (LFI/RFI)
- Configuration issues: Man-in-the-Middle, cross-domain policy files, information disclosures.
- HTTP parameter pollution and HTTP response splitting
- Denial-of-Service (DoS) attacks: Slow HTTP and XML Entity Expansion
- Insecure distcc, FTP, NTP, Samba, SNMP, VNC, WebDAV configurations
- HTML5 ClickJacking, Cross-Origin Resource Sharing (CORS) and web storage issues
- Unvalidated redirects and forwards, and cookie poisoning
- Cookie poisoning and insecure cryptographic storage
- Server Side Request Forgery (SSRF)
- XML External Entity attacks (XXE)
- And much much much more…
На официальном сайте проекта описано, что там может встретиться. Также настоятельно советую заглянуть на , там целая подборка boot2root-образов для всех желающих.
Как из архива tar.gz разархивировать только одну папку в нужную директорию?
Для этого можно воспользоваться подобным синтаксисом:
Тем самым мы разархивируем из архива file.tar.gz только папку file/bin в текущую директорию.
Есть ли возможность поднять виртуальную машину на сервере без GUI?Да, к примеру, можно воспользоваться QEMU. QEMU относится к программам, эмулирующим аппаратную среду. Ее основные функции аналогичны VMware, VirtualBox, Bochs или Virtual PC. Хотя некоторые фичи отличаются. Например, поддерживается два вида эмуляции:
- Full system emulation — создается полноценная виртуальная машина, имеющая «свой» процессор и различную периферию;
- User mode emulation — режим, поддерживаемый только в Linux, позволяет запускать на родном процессоре программы, откомпилированные под другую платформу.
Во втором варианте QEMU берет на себя всю заботу по переводу инструкций процессора и конвертацию системных вызовов. В этом режиме возможна эмуляция не только x86, но и процессоров других архитектур: ARM, SPARC, PowerPC, MIPS и m68k, что довольно круто. QEMU доступен в репозитории для Debian.
Теперь собираем модуль kqemu QEMU Accelerator Module. Он позволяет выполнять часть кода напрямую на реальном процессоре, минуя виртуальный, ускоряя тем самым работу гостевой системы. Благодаря ему запуск виртуальной ОС увеличивается в разы.
Пробуем загрузить модуль:
Чтобы впредь не загружать его вручную, добавляем строку kqemu в /etc/modules. Для запуска самой виртуальной машины достаточно команды
Возможности QEMU почти безграничны, а документация содержит огромное количество страниц информации, описать полностью процесс и все тонкости просто невозможно. Поэтому, если тебя заинтересовал данный инструмент, советую его обязательно попробовать и применять в своих проектах, благо он не так сложен, как кажется на первый взгляд.
Как осуществить перенос Windows на SSD с установкой туда же Linux с сохранением разделов и данных? При этом на HDD должны сохраниться другие разделы винды и установлен своп с /home.- По первоначальным условиям у нас один жесткий диск 1 Тб, разбитый на три раздела (C: D: E:). Нужно доставить SSD-диск и разбить его на три раздела. После переносов должно получиться следующее:
- HDD, вместо диска С: будет два раздела: /dev/sda1 -> /swap; /dev/sda2 -> /home; разделы D: E: мы не трогаем.
- SSD, /dev/sdb1 -> загрузчик Win7, который впоследствии будет переписан grub; /dev/sdb2 -> C:; /dev/sdb3 -> / (Linux)
- Для начала нужно обязательно сделать бэкап всех важных и критичных данных. При желании можно даже снять образ диска, чтобы уж наверняка, для этого можно использовать Clonezilla, о которой писали в предыдущем номере ][.
- Теперь можно приступать к переносу разделов. Для этих целей нам вполне подойдет Acronis Disk Director. После запуска и определения двух дисков HDD и SDD выбираем загрузчик винды (это раздел в 100 Мб на sda) и выбираем перенести том на SSD. Так же делаем и с диском С:. После перезагрузки наша винда должна ругаться и не грузиться, что логично. Не пугайся, вставляй загрузочный диск, пусть она восстановит правильные пути к загрузчику. Самое главное — не идти дальше, пока система не стартанет нормально.
- После того как с загрузкой винды проблем не будет, двигаемся дальше. Начинаем ставить линукс. Нам нужно поставить /swap в начало жесткого диска sda, затем все, что осталось от бывшего диска С:, отдаем под /home, на SSD же ставим все остальное и на него же устанавливаем grub.
- После перезагрузки ты должен получить желаемую карту, которую планировал. Две операционные системы, разбитые на двух дисках. Это дает неплохой прирост в работе обеих ОС, но и добавляет некоторых неудобств, связанных с тем, что данные нельзя потерять и ставить подобные эксперименты приходится на боевой машине. Если есть возможность, советую перед началом потренироваться «на кошках» или хотя бы на виртуалках.
A. SSD даст значительный прирост скорости в сравнении с обычным HDD, плюс если использовать так называемые серверные SSD, рассчитанные на большее количество циклов перезаписи, можно добиться весьма хороших показателей по часам наработки на отказ. Плюс тихая работа и меньший вес ноутбука.
B. Как ни крути, цена на SSD сейчас значительно выше, чем на обычные HDD, плюс SSD при ежедневной работе вылетает примерно через год плотного использования, а HDD способен прослужить до смены самого ноутбука в целом или же минимум пару лет. Плюс больший объем дискового пространства по меньшей цене в большинстве случаев выглядит более выигрышным.