Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Microsoft поставляет устаревшие, уязвимые опенсорсные утилиты с Windows 10 и 11

Блог компании ITSumma Информационная безопасность *Open source *PowerShell *Софт
В списке рассылки Seclists, посвящённом информационной безопасности, обратили внимание на пренебрежительное отношение Microsoft к опенсорсным компонентам в составе Windows 10 и 11.

Так, в декабре 2017 года Microsoft объявила о включении в состав Windows 10 программ curl.exe и tar.exe. Но компания не смогла сделать это нормальным образом, а потерпела «жалкую неудачу» (как пишут в списке рассылки): она взяла версию curl 7.55.1 от 14.11.2017 года — и вообще не обновляла её два года, применив пару патчей в 2019 году (без обновления), а потом опять забыв о программе ещё на два года до нынешнего времени.

За это время вышло 34 новых версии curl, а в древнем curl 7.55.1 задокументировано 15 уязвимостей.
Читать дальше →
Всего голосов 17: ↑14 и ↓3 +11
Просмотры 5.8K
Комментарии 6

Кросс-доменный XMLHttpRequest

Чулан
Важной составляющей технологии AJAX является XMLHttpRequest. Этот объект дает возможность осуществлять HTTP-запросы к серверу без необходимости в перезагрузке страницы.
Читать дальше →
Всего голосов 20: ↑9 и ↓11 -2
Просмотры 1.4K
Комментарии 22

SSL из PHP: socket и cURL

Разработка веб-сайтов *
Сегодня, этим сонным летним утром, я расскажу вам про SSL соединение из PHP скрипта. Расскажу исходя не только лишь из теории, а ещё и решая вполне себе практическую задачу — логин на гугловский блогосервис blogger.com.

поехали
Всего голосов 25: ↑15 и ↓10 +5
Просмотры 50K
Комментарии 21

Закачка ролика на ruTube с использованием cURL

PHP *
На хабре уже были топики, посвященные открытому API для работы с сервисом ruTube. В примере, который можно скачать с сайта ruTube (http://rutube.ru/partners/phpapi.html), отправка ролика осуществляется следующим образом (код взят из примера без правок):

Читать дальше →
Всего голосов 17: ↑9 и ↓8 +1
Просмотры 2.2K
Комментарии 12

Исследуем Google Reader API

Чулан
Возникла необходимость сделать интерфейс к гуглоридеру, отличный от стандартного. Использование стандартного ajax reader api не удовлетворило из-за коммерческих ограничений. API, описанное во множестве импортных блогов отказывалось нормально работать, поэтому на вооружение было взято расширение firebug всеми любимого браузера. В результате получилась небольшая подборка полезных для работы с ридером URLов, которыми хочу поделиться с общественностью.

disclaimer: эта подборка не претендует на полноту, а лишь подытоживает некоторый результат, который позволил решить поставленную задачу, а именно: получить список подписок, непрочитанные элементы по подписке, отметить элементы как прочитанные, отметить подписки как прочитанные. Вся остальная информация с легкостью может быть получена с использованием официального руководства.

Для реализации взаимодействия клиентского ajax-интерфейса с google.com/reader/ будем использовать посредника на php+curl.
Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 972
Комментарии 10

Лечение битых файлов, закачки и докачки

Чулан
В этом топике вы узнаете как:
  • восстановить повреждённую закачку, даже если файла нет в торрентах и других источниках, что содержат хеш его фрагментов;
  • скачать файл с докачкой, даже если она не поддерживается сервером;
  • докачивать, если сервер не даёт прямых ссылок, отдавая файл с разных адресов (но отдаёт Partial Content).

Нынче наткнулся на топик «Торрент vs. 64 кбит/с» и увидел проблему с которой сам неделю назад столкнулся.

Довольно долго, дней 10 (с перерывами), качал 3,5 Гб ISO образ на своём 100 Кбит/с. И этот самый образ повредился при скачивании. Попытался поискать это дело в торрентах и воспользоваться методом, описанным в вышеупомянутом топике — раньше я уже так восстанавливал файлы. Но файла там не оказалось (да и на ресурс откуда я скачивал он попал всего-то пару недель назад). Дабы меня не начали пинать за пиратство, сразу скажу что качал Visual Studio 2008 Professional SP1 RUS с Dreamspark.

Так вот, ждать ещё 10 дней не хотелось, как и производить особо много ручной работы, в результате чего родился скрипт, который и выполнил весь этот грязный процесс…
Читать дальше →
Всего голосов 10: ↑9 и ↓1 +8
Просмотры 2.8K
Комментарии 4

Как качать с Rapidshare.com «free user», используя curl или wget

Настройка Linux *
Появившаяся почти год назад статья про скачивание с многими любимого кладезя почти легальной вами же забэкапленной информации Rapidshare.com вызвала одобрение у публики хабра. За последнее время рапида убрала с себя капчу, сделала не столь долгим ожидание между загрузками, в общем, всем своим видом показывает, что с ней очень приятно работать. А если это можно делать ещё и бесплатно… так почему же нет?!
Читать дальше →
Всего голосов 84: ↑82 и ↓2 +80
Просмотры 4.5K
Комментарии 33

Загрузка картинок на стену ВКонтакте

PHP *
А вам приходят сообщения от друзей с просьбами отослать куда-нибуть СМС или заглянуть в галерею где ваша знакомая позирует ню? А все потому, что пользуются сомнительным ПО и ходят на сомнительные сайты.

Мы сейчас напишем скрипт, который будет размещать картинки-граффити на стене. Писал под себя, так что любителям удобств напильник в руки и удачи.
Читать дальше →
Всего голосов 35: ↑17 и ↓18 -1
Просмотры 5.7K
Комментарии 26

Многопоточное скачивание в cURL на PHP

PHP *
В данном топике представлена на мой взгляд удобная и функциональная реализация многопоточного скачивания на cURL для PHP. Возможно кому-то она будет полезна, а мне принесёт инвайт ;)

Скачиванием через cURL не пользовался пусть даже из интереса только ленивый. Будь-то из консоли, либо реализуя код на каком-либо ЯП. Решения блокирующего скачивания одной ссылки валяются на каждом углу сети, к примеру на php.net. Однако, если рассматривать реализации на PHP, то такой подход подчас не подходит ввиду высоких временных затрат на вспомогательные операции ( dns lookup, request waiting и подобные ). Для скачивания большого числа страниц последовательный вариант не приемлем. Если устраивает — дальше можно не читать :)
Читать дальше →
Всего голосов 17: ↑17 и ↓0 +17
Просмотры 26K
Комментарии 20

NNcron скрипт для автоматического регулярного скачивания антивирусов и заливки на флешку

Системное администрирование *
Топик в помощь странствующим админам, которые часто, или не очень часто, помогают друзьям или подшефным организациям избавиться от вирусов.

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

Итак, необходимо:
1) чтобы ежедневно ночью скачивались несколько популярных антивирусов (в моем примере CureIt, базы к AviraFree, базы к AVZ).
2) чтобы при вставке определенной флешки в компутер — они автоматически заливались на нее.
Читать дальше →
Всего голосов 5: ↑3 и ↓2 +1
Просмотры 4.5K
Комментарии 3

запрос состояния счёта для украинского провайдера life:)

Чулан
Недавно life:) открыл «портал» my.life.com.ua, самым полезной функцией которого, как мне показалось, является возможность узнать состояние счёта.

Ну и я быстренько на-curl-ил:
Читать дальше →
Всего голосов 18: ↑14 и ↓4 +10
Просмотры 348
Комментарии 8

Автоматизируем работу с сайтом за 5 минут на примере Yandex.Почты с помощью NetExport

Разработка веб-сайтов *
Иногда, бывает нужно автоматизировать некоторые процессы на чужом сайте. Залогиниться на сайт, скачать какой нибудь файл, открыть страничку. Часто приходится разбираться в коде сайта, чтобы найти, как правильно написать запрос curl.

Предлагаю Вашему вниманию способ, которым я сам пользуюсь, чтобы значительно облегчить себе жизнь и автоматизировать все и вся, от проверки почты, до загрузки данных в телебанке. Я постараюсь, на примере Yandex.почты показать, как можно очень быстро и почти без программирования сгенерить curl php скрипт для захода на любой сайт и загрузки контента в автоматическом режиме.
Читать дальше →
Всего голосов 42: ↑40 и ↓2 +38
Просмотры 7.9K
Комментарии 22

VKFS — Файловая система для VKontakte на основе Fuse

Социальные сети и сообщества
Не так давно на хабре (и на лепре, и еще где-то) появилась такая гифка:
image
Я посидел и подумал: «А почему бы и нет?»
Прошло некоторое время и, как я и обещал
Встречайте! VKFS — файловая система vkontakte, основаная на fuse.
Это не релиз — пока что реализована только возможность чтения собственной стены, но уже готов весь «каркас» для этого всего.
Читать дальше →
Всего голосов 247: ↑214 и ↓33 +181
Просмотры 29K
Комментарии 159

Монтируем FTP ресурс как локальную FS

Настройка Linux *
Захотелось как-то исполнить команду find в ftp-пространстве, но любой нормальный ftp сервер этого не даст сделать, а решение ну очень хотелось найти.
Читать дальше →
Всего голосов 49: ↑37 и ↓12 +25
Просмотры 67K
Комментарии 43

Screen Shot script

Настройка Linux *
image Всем доброго времени!
В один прекрасный момент меня достало:
  1. Нажимать PrintScreen
  2. Искать место куда же его сохранить
  3. Открывать сервис imageshack\radikal\хабр-эффект
  4. Искать на диске, куда же я сохранил все таки именно этот скриншот
  5. Копировать полученную ссылку, и делать с ней .....

Теперь я делаю:
  1. Нажимаю Ctrl+/
  2. Копирую полученную ссылку и делаю с ней .....

Неправдо ли лучше? И вас это тоже достало? Тогда лезем под кат!
Читать дальше →
Всего голосов 71: ↑45 и ↓26 +19
Просмотры 7.6K
Комментарии 83

Сравнение нагрузки — PyCurl vs HTTPClientFactory+Deferred

Python *
В процессе разработки одного проекта на Python+Twisted (распределителя СМС запросов) пришлось переписать вызов URL различных сервисов с разных серверов c блокирующего вызова через PyCurl на неблокирующий (client.HTTPClientFactory + deferred). Чтобы иметь перед глазами реальные данные, решил дать нагрузку и посмотреть на результаты

Читать дальше →
Всего голосов 33: ↑23 и ↓10 +13
Просмотры 1.8K
Комментарии 19

PHP class для Goo.gl

IT-компании
image
И опять немного о Goo.gl. Листая хабр видел предложения на JS, но лично мне они не подходили. Сегодня случайно наткнутся на симпатичное для меня решения, коим и делюсь с общественностью…
Читать дальше →
Всего голосов 61: ↑50 и ↓11 +39
Просмотры 3.5K
Комментарии 45

Автоматическое оповещение читателей о новостях с помощью ВКонтакте

Социальные сети и сообщества
Из песочницы
Tutorial
Вторая часть

Предисловие


Те из вас, кто пользуется социальной сетью ВКонтакте и подписан на официальную страничку Хабры в ней, заметили, что все новые топики с главной появляются на страничке в виде сообщений-ссылок:
vk

Так вот, если у вас есть свой блог и вы хотите на своей личной страничке публиковать такие же сообщения-ссылки автоматически — топик может быть вам интересен. Сегодня мы попробуем публиковать простые сообщения ссылки, а далее добавлять к ним «превью»-картинки.
Читать дальше →
Всего голосов 103: ↑73 и ↓30 +43
Просмотры 25K
Комментарии 57

ООП-обертка для PHP lib_curl

PHP *
Пару лет назад я сделал небольшой персональный проект под названием «Аггрегатор комиксов». Суть проекта в том, что есть куча сайтов с комиксами, на которых нет RSS-лент. И мне было откровенно лень ходить по этим сайтам вручную и проверять апдейты.

Посему был написан примитивный «паучок», обходящий сайты по расписанию, разбирающий содержимое страниц и по разным алгоритмам выковыривающий информацию об апдейтах и складывающий эту информацию в базу, откуда уже другой скрипт, вьюер, генерировал РСС, Атом или Хтмл.

Читать дальше →
Всего голосов 52: ↑37 и ↓15 +22
Просмотры 4.5K
Комментарии 108

Runkit + PHPUnit = 100% покрытие тестами

PHP *
Здравствуйте, уважаемые коллеги.

Одним из косвенных показателей качества кода считается code coverage — степень покрытия его тестами (как правило, имеются в виду модульные тесты). В большинстве случаев за coverage принимается соотношение количеству строк кода, в котрое попадает управление во время прогона тестов, к общему числу значимых (не являющихся комментарием, пустой строкой, или, например одной фигурной скобкой, обозначающей начало или конец блока) строк кода модуля.

Другим же условием хороших тестов является отсутствие сторонних эффектов (side effects), как например создание/удаление файлов, установка сетевых соединений, запись в порты и т.д.

Однако, когда дело касается модуля, взаимодествующего с внешним миром, эти два требования вступают в противоречие. И ладно, если речь идет о файловых операциях, когда на помощь приходит vfsStream. Но что делать, когда надо тестировать, скажем, прямую работу с сокетами или код, использующий функции curl_*?

Под катом вы найдете мое решение и, в качестве бонуса, еще одну ОПП-обертку к курлу, полностью покрытую тестами.
Читать дальше →
Всего голосов 35: ↑33 и ↓2 +31
Просмотры 3.4K
Комментарии 15