Здесь можно скачать вторую редакцию книги “Understanding Microsoft Virtualization Solutions”. Я как-то умудрился пропустить первую редакцию, но теперь-то уж наверстаю. И Вам того же желаю
четверг, 28 октября 2010 г.
понедельник, 25 октября 2010 г.
Платформа грядет…
четверг, 21 октября 2010 г.
Старая добрая командная строка #5
На этот раз статья даже не о командах, а о различных кунштюках и приемах, которые можно использовать. (за идею спасибо Anvarich). На самом деле это – самые основы cmd, но, как правильно мне было замечно, многие этого не знают. В этом выпуске то, что имеет отношение к возникающему иной раз зуду запустить больше одной команды за раз в одной строке и связанному с этим.
“&”. Например, Вам захотелось перезапустить сервис. В PoSh это предельно просто:
Get-Service w32time | Restart-Service
В cmd нужно две команды:
Или лучше так:
Результат тот же, но происходит все быстрее.
“&&”. Продвинемся немного дальше и решим, что нам не нужно запускать вторую команду, если первая не удалась. Ну в самом деле, зачем нам копировать файл в папку, создать которую нам не удалось? Мы ведь все равно не сможем этого сделать, так зачем напрягаться? =) Так что вместо “&”:
мы можем использовать “&&”:
Видите, в этот раз у нас только один “access denied”, то есть копировать файл мы даже не пытались.
“||”. Это нужно использовать наоборот, в случае, если мы желаем что-то запустить в случае неудачи предыдущей команды. Мне удалось придумать такую ситуацию:
Что произошло? Да просто когда копирование файла не удалось, мы запустили создание папки, а потом скопировали файл при условии, что папка создалась успешно. В случае, если бы директория уже была создана ранее, мы бы получили следующее:
Файл просто был скопирован и на этом все закончилось.
И последний </irony mode>“кусочек мудрости” </irony mode off>: Вы можете даже группировать Ваши команды, чтобы они выполнялись в нужном Вам порядке. Делается это с помощью (ни за что не догадаетесь) заключения команд в скобки: “()”.
понедельник, 18 октября 2010 г.
Раскрывать или не раскрывать
Вторая тема, которую мне хотелось бы обсудить после обнаружения мной уязвимости в VMWare, звучит почти по-Шекспировски. Что должны делать человек или организация в случае обнаружения ими уязвимости? Сообщить вендору и публично разгласить подробности одновременно? Просто раскрыть публично? Уведомить вендора и ждать обновления? Очевидно, существует куча возможных стратегий, и, как обычно, каждый выбирает для себя свою точку зрения на проблему. Microsoft, к примеру, придерживается своей Coordinated Vulnerability Disclosure Policy. Это означает, что они желают получить время на произведение исправление, его тестирование (чтобы клиенты испытывали как можно меньше проблем) и доставку пользователям. А так же они предоставят такую же возможность и другим вендорам, в случае, если найдут уязвимость у них. Google использует свою Responsible Disclosure Policy, предоставляя кому угодно 60 дней на исправление уязвимости. Первый вариант дает вендору возможность действительно хорошо оттестировать свое исправление, что немаловажно, но может провоцировать его к манкированию опасностью. Второй, похоже, будет заставлять вендора чинить проблему как можно быстрее, но производство обновлений в самом лучшем случае может занимать 3-4 недели. В сложных случаях это будет даже больше времени. Распространение же информации об уязвимости раньше ее закрытия может навредить даже больше, чем ее длительное игнорирование. Или нет? Безопасность – странная область знаний, в которой почти нет достоверной статистики для многих вещей.
Что ж, похоже, что каждый будет искать свое собственное решение проблемы (какими бы ни были параметры выбора: вера, собственная статистика или маркетинговые намерения). Вопрос, что мне выбрать для себя? Что я должен принять, как разумное решение? Практика показала, что я больше на стороне MS: я напишу вендору (и безопаснику в моей компании, конечно же). Но что я буду делать, если они не почешутся? Я не был в подобной ситуации, так что мне сложно сказать. Наверное, все будет зависеть от критичности уязвимости, реакции вендора и прошедшего времени. Возможно, немного позже я бы начал угрожать вендору раскрытием информации и потом просто расскажу “всему миру” (да, всем моим читателям. Не много, но чем богаты, тем и рады ). К счастью мое общение с VMWare было совсем другим, так что я все еще не знаю, как повел бы себя: с момента моего письма им до выпуска новой версии прошло всего 17 дней.
А Вы что думаете? Как бы поступали Вы или считаете правильным поступать?
четверг, 14 октября 2010 г.
Старая добрая командная строка #4
Всем привет. Это, пожалуй, последний выпуск про больше, чем одну команду (тут можно прочитать выпуски #0, #1, #2, #3), потому что…
Разумеется, будут еще статьи про разные команды и, может быть, как подсказал мне один из читателей, о приемах работы в командной строке. Поехали.
- recover. У меня, к счастью, не было шанса пока ее проверить, однако ее описание говорит нам, что эта команда попытается прочитать Ваш поврежденный файл посекторно. То есть Вы получите файл, состоящий из содержимого хороших секторов, а содержимое плохих будет потеряно. Может быть, это не слишком утешительно, но если Вы, вдруг, имеете поврежденный ОБТФ (Очень Большой Текстовый Файл), тогда из полностью нечитаемого файла Вы можете получить полностью читаемый, но с частично потерянными данными. Так что если Вам не посчастливится использовать эту команду – расскажите мне о результатах
- systeminfo. Если нужно получить кое-какую информацию о клиентском компьютере до начала поиска проблем не прибегая к помощи сторонниз утилит и загрузкам, то это прекрасная команда. Имя хоста, конфигурация сетевых устройств, обновления и все такое. Даже uptime, хотя буквально вчера эта команда показала мне, что один из моих серверов не перезагружался с 1982 года =) Данные так же можно выгрузить в разных форматах.
- takeown. Представьте: нажимаете Вы “ctrl+a”, потом “shift+delete” и… “Access denied”. А потом выясняется, что нельзя даже сменить права, поскольку нет на это прав, и владелец файлов кто-то дургой. Разумеется, можно стать владельцем файлов через GUI, но тогда о чем бы я стал писать статьи? =) Так что просто используйте “takeown” и Вы сможете сделать это из командной строки (даже на другом компьютере). У нее есть, впрочем, один недостаток: Вы не можете дать владение файлами другим учетным записям, если не знаете их учетных данных, однако, команда все еще может быть полезной в написании скриптов, полагаю
На этом я завершаю данную серию, написанную по мотивам случайных находок на сайте TechNetThat. Однако продолжение последует, я полагаю.
понедельник, 11 октября 2010 г.
К вопросу о скачивании в неподобающих #2
Как и обещал, я собираюсь описать пару идей, который у меня возникли, когда я ковырял свою уязвимость в VMWare. Вот первая из них. Более, чем год назад я писал об угрозах, возникающих при скачивании файлов из p2p сетей и один из моих читателей высказался в том ключе, что скачивать софт оттуда безопасно, если Вы знаете правильный hash дистрибутива или что Вы там качаете. К сожалению, та уязвимость, о которой я продолжаю хвастать, показала, что даже подобные предосторожности могут, на самом деле, не помешать злоумышленнику навредить Вам. Видите ли, файлы из p2p сетей часто приходят со всякими, безобидными на первый взгляд, файлами в придачу. Разумеется, эти файлы никто не смотрит на предмет угроз, так что попасть в ловушку достаточно несложно. Так что p2p небезопасны в любом случае.
З.Ы. hash не панацея в любом случае – он короче, чем файл, следовательно – не уникален. На данном этапе он обеспечивает лишь достаточно хорошую защиту от подделки содержимого файла – никакой серебрянной пули. =)
четверг, 7 октября 2010 г.
Новый калькулятор размера хранилища для DPM 2010
Ну… Не особо новый, на самом деле: это было опубликовано более месяца назад, однако, лучше поздно, чем никогда
Стали доступны три калькулятора: для Exchange, SharePoint и Hyper-V. Эти файлы могут быть Вам вполне полезны… если только вы знаете различные параметры для своих систем типа процента изменений в виртуальных машинах за сутки.
Было бы интересно подставить туда данные из реальной жизни и посмотреть, сойдутся ли цифры?
понедельник, 4 октября 2010 г.
Старая добрая командная строка #3
Продолжаем нашу серию (сообщение #0, сообщение #1, сообщение #2)
- findstr. Еще одно déjà vu? Почти. Эта команда действительно похожа на “find”, которую мы рассмотрели во втором выпуске “старой доброй командной строки”, однако она намного мощнее. Она даже помощнее grep. Правда. Для нее есть несколько опций вывода (номер строки в файле, только имя файла, смещение и так далее), ввода (список файлов из файла/консоли, строка поиска из файла/консоли) и поиска (буквальный поиск, искать любое из слов или всю строку и даже регулярные выражения). Она и впрямь может быть весьма полезна, в случае, если Вам нужно произвести некий быстрый и точный поиск в нескольких файлах или выводе программы или автоматизировать несложную задачу без чрезмерного кодирования или инсталлирования PoSh или Perl туда, где он не стоит по-умолчанию. В этих случаях findstr – Ваш выбор. Давайте посмотрим несколько простых сценариев использования. На данный момент у меня есть три .txt файла в одной папке:
Заметьте разницу между файлами: file2.txt имеет внутри 45% вместо 40%, а file3.txt имеет пробел в начале второй строки. Давайте найдем тут слово “done”:
Достаточно просто, не так ли? Попробуем теперь получить немного больше информации:
Эта команда показывает нам, в каком файле есть слово “done”, в какой строке (2) и с каким смещением (14). Заметьте, что смещение отсчитывается до начала строки, в которой есть искомое, а не до первого его (искомого) вхождения. Теперь найдем файлы, в которых “45” стоит в начале строки:
или другим способом:
Простая, но мощная.
- msdt. Эта программа на самом деле запускает GUI, так что ее вряд ли можно назвать утилитой командной строки, однако, она имеет ряд параметров для запуска из CLI, так что если Вам нужно запустить у пользователя определенный набор для поиска и решения проблем, то это вполне неплохой выбор. Вот пример использования:
после этой команды откроется такое окно:
и я получу рекомендации по уменьшению энергопотребления моего ноутбука, а так же смогу автоматически все поправить. На самом деле, Вы даже можете создавать собственные наборы для решения проблем, по крайней мере, если сможете пробиться через вот эти страницы: http://msdn.microsoft.com/en-us/library/dd323774(v=VS.85).aspx. Лично я планирую попробовать это как-нибудь… В будущем…
- openfiles. Если нужно быстро получить информацию о файлах, открытых по сети (или локально, но это потребует некоторой подготовки), и, может быть, поместить эту информацию в файл или каким-то еще образом обработать ее, то вот оно – решение. Этот экран
на самом деле идентичен по содержанию этому:
и так же, как во втором случае Вы можете закрыть сессию
Вы можете сделать это в первом. Но в случае, если сессий у Вас много или очень много, возможности CLI, возможно, более практичны, потому что позволяют сделать следующее:
Как несложно увидеть, мы запросили отрытые файлы и отфильтровали их с помощью “findstr” (эй, эта моя статья уже начинает помогать, не правда ли? ). Потом мы получаем ID нужной нам сессии и отключаем ее с помощью ключа /disconnect. Если у нас открыты тысячи файлов, то так сделать много удобнее, чем с помощью графического интерфейса.
Ну и хватит на сегодня, продолжение следует…