Как стать автором
Обновить
0

ВКонтакте API *

Пишем для VK

Сначала показывать
Порог рейтинга
Уровень сложности

Ломаем текстовую капчу на примере VK или брутфорсинг до сих пор актуален

Уровень сложностиСредний
Время на прочтение52 мин
Количество просмотров22K

Что мы знаем о капче? Капча - автоматизированный тест тьюринга, помогающий отсеивать подозрительные действия недобросовестных роботов от реальных людей. Но, к сожалению ( или к счастью, смотря для кого ), текстовая капча сильно устарела. Если еще 10 лет назад она была более-менее эффективным методом защиты от роботов, то сейчас ее может взломать обойти любой желающий робот, более-менее разбирающийся в компьютере.

В данной статье-мануале я покажу, как создать собственную нейросеть по распознанию капч, имея под рукой домашний компьютер, базовые знания в python и немножко примеров капч.

А ну-ка поподробнее
Всего голосов 64: ↑61 и ↓3+58
Комментарии38

Новости

Как получать музыку из ВКонтакте в 2022 году

Время на прочтение5 мин
Количество просмотров25K

При проектировании проекта, я решил разделить его на две части. Первая — получение музыки из ВК. Вторая — сам бот. И начать я решил с первой части.

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

Я решил посмотреть что сейчас отдает ВКонтакте при воспроизведении записи и полез во вкладку network, вот что я там увидел...

Читать далее
Всего голосов 57: ↑55 и ↓2+53
Комментарии17

Как изменились хабравчане за 5 лет? Или «280 недель спустя»

Время на прочтение8 мин
Количество просмотров9.1K
Мы стали старше, женатых/замужних стало в полтора раза больше (влюбленных на треть меньше), а число терпимых к алкоголю выросло на четверть.

Если вы хотите посмотреть, как изменились хабравчане за 5 с лишним лет, добро пожаловать под кат.

Читать дальше →
Всего голосов 93: ↑91 и ↓2+89
Комментарии19

Как развлечь себя с помощью vk api

Время на прочтение4 мин
Количество просмотров50K
В какой-то момент моей жизни я понял, что для счастья мне нужно создать 10 страниц-копий самого себя во Вконтакте и добавиться одновременно всеми в друзья к людям из френдлиста моей основной страницы. Для подробностей реализации идеи — прошу под кат.

Читать дальше →
Всего голосов 86: ↑77 и ↓9+68
Комментарии35

Истории

Узнать возраст пользователя VK или о чём ещё может рассказать социальный граф

Время на прочтение5 мин
Количество просмотров37K
«Скажи мне кто твой друг и я скажу, кто ты.»
Еврипид 480—406 до н. э.

Долгое время я смотрел на API VK как кот на стиральную машину — меня гипнотизировала возможность провести какое-нибудь исследование в одной из крупнейших социальных сетей, которая проникла во многие сферы нашей жизни. И вот однажды родился вопрос, а можно ли по кругу общения пользователя социальной сети определить его возраст?


Можно, вот с такусенькой ошибкой
Всего голосов 70: ↑62 и ↓8+54
Комментарии29

FindFace закроетcя для простых смертных

Время на прочтение2 мин
Количество просмотров156K
Разработчики сервиса FindFace, с помощью которого можно по фотографии находить людей «ВКонтакте», объявили о прекращении работы над его общедоступной версией и ее поэтапном отключении с 1 июля.

Проект пытались подать публике как «инновационный сервис знакомств с двойниками известных людей» за 150 рублей в месяц, но использовался он не только в «амурных делах», а еще например, пользователями «Двача» для деанонимизации и преследования порноактрис и поиска как преступников, так и просто участников оппозиционных митингов.

image
Читать дальше →
Всего голосов 70: ↑68 и ↓2+66
Комментарии127

Как выигрывать в конкурсах репостов Вконтакте?

Время на прочтение4 мин
Количество просмотров143K

Мне захотелось узнать, реально ли выиграть в конкурсах репостов ВКонтакте.

Как это сделать? Ответ очевиден — надо участвовать во всех конкурсах и по теории вероятностей, чем больше конкурсов, тем больше шанс выиграть хоть что-то.

Идея простая, берем модуль vk_api для Python и официальную документацию Vkontakte API отправляем запрос:

pool.method('newsfeed.search', {'q':u'Конкурс репост подарки <мой_город>'})
и репостим через wall.repost все что нашли себе на страницу и вступаем в группы методом groups.join

Что из этого получилось, с какими проблемами я столкнулся, читаем под катом
Читать дальше →
Всего голосов 123: ↑118 и ↓5+113
Комментарии90

Как я создал SaaS-сервис, который приносит мне 1000 долларов в месяц

Время на прочтение6 мин
Количество просмотров63K
Примечание: здесь рассказано о создании с нуля небольшого, прибыльного SaaS-сервиса и о доведении его до состояния, когда он стал приносить 1 000 долларов в месяц. Это не имеет никакого отношения к многомиллиардным стартапам единорогов; я просто описываю мой опыт такой работы. Речь идёт о простом, надёжном и прибыльном инструменте, который может сделать для себя любой человек. И последнее — этот веб-сервис был сделан для внутреннего рынка России, поэтому я перевёл всё на английский и в доллары для удобства. Но, с другой стороны, этот опыт является довольно универсальным и может быть применён везде (ссылка на сервис).

Всё началось с моего другого SaaS-сервиса с названием Postio, который я сделал, чтобы облегчить людям поиск и публикацию контента на их страницах и в их группах в социальных сетях. В рамках своей маркетинговой стратегии я приобрёл и опубликовал на своём блоге десяток статей по различным темам, ориентированных на аудиторию веб-сервиса, чтобы получить дополнительный трафик с поисковых систем.

Потом вдруг Postio начал получать относительно большой трафик от Google и Яндекс (русская поисковая система) с ключевыми словами, которые не имели ничего общего с самим Postio.

image

Аналитическая статистика Гугл по суточному трафику

Здесь-то и начинается фактическая история.
Читать дальше →
Всего голосов 83: ↑73 и ↓10+63
Комментарии37

Администраторы групп в vk всегда были в открытом доступе

Время на прочтение4 мин
Количество просмотров71K
Ранее я уже писал один пост на geektimes о том, что истинно анонимных пабликов в ВК не было до 29.10.14. Но как оказалось, я ошибался на счет даты. И не до конца осознал всю суть существующей проблемы анонимности.
Читать дальше →
Всего голосов 119: ↑101 и ↓18+83
Комментарии70

Уязвимость ВКонтакте: доступ к превью фотографий из диалогов и скрытых альбомов любого пользователя

Время на прочтение3 мин
Количество просмотров107K

Коротко


Была обнаружена уязвимость в мобильной версии сайта vk.com. Она позволяла просматривать превью скрытых фотографий, в том числе фотографии из диалогов пользователей, плюс можно было получить информацию о пользователях лайкнувших это скрытое фото. На данный момент уязвимости уже нет — её устранили полгода назад. ВКонтакте выразили благодарность в размере 700$ (нет, не в голосах).
Подробнее
Всего голосов 66: ↑58 и ↓8+50
Комментарии6

Как я много раз не бросил разработку своей второй игры

Время на прочтение15 мин
Количество просмотров43K

Картинка для привлечения внимания

Успокоившись после шока из-за того, что моя первая игра не взорвала интернет, я решил сделать еще одну. Первая мысль, с которой началась разработка второй игры, возникла в голове и без обдумывания стала краеугольным камнем в фундаменте игры: «если игра с бесконечным геймплеем не стала популярной, то нужно делать контенто-зависимую игру с уровнями».

Так как небольшой опыт создания игры у меня уже был, я вооружился не клавиатурой, как в прошлый раз, а карандашом и бумагой, и принялся «придумывать» игру. На разных листах А4 я записывал свои мысли по разным направлениям: игровые механики, сеттинг, интерфейс, правила, интересные мысли, запомнившиеся игры из детства и т. п.; при этом я параллельно шерстил Google Play Market в поисках вдохновения. В итоге, спустя несколько дней, было принято решение, что игра станет головоломкой, а именно — пазлом. За это время мой мозг и пальцы заскучали по программированию, в результате чего захотелось сделать хоть какой-нибудь прототип игры. Это сподвигло меня на более интенсивную проработку идеи пазла, и в итоге в качестве рабочего был принят вариант со следующими правилами: игровое поле состоит из квадратных кусочков пазла (далее они будут называться тайлами), на которых располагаются разноцветные линии; тайлы можно менять местами; цель игры: собрать пазл единственным образом, в котором линии одного цвета замкнуты в некий узор.
Продолжить создавать игру
Всего голосов 75: ↑67 и ↓8+59
Комментарии33

CSRF-уязвимость VK Open Api, позволяющая получать Access Token’ы сторонних сайтов, использующих авторизацию через VK

Время на прочтение14 мин
Количество просмотров38K
Представляю вашему вниманию обзор уязвимости, связанной с неправильным применением JSONP в VK Open Api. На мой взгляд, уязвимость достаточно серьёзная, т.к. позволяла сайту злоумышленника получать Access Token другого сайта, если на нём используется авторизация через библиотеку VK Open API. На данный момент уязвимый код поправили, репорт на HackerOne закрыли, вознаграждение выплатили (1,500$).

Как это выглядело


В принципе, процесс получения пользовательского Access Token'а страницей злоумышленника происходил по стандартной схеме эксплуатации CSRF-уязвимости:

  1. Пользователь заходит на сайт, использующий библиотеку VK Open API (например, www.another-test-domain.com).
  2. Авторизуется там через VK.
  3. Потом заходит на сайт злоумышленника (например, www.vk-test-auth.com), который, эксплуатируя уязвимость, получает Access Token, принадлежащий сайту www.another-test-domain.com.
  4. Получив Access Token пользователя, злоумышленник может обращаться к VK API с теми правами, который пользователь дал сайту www.another-test-domain.com при авторизации на нем через VK.

Демонстрация


На видео показано, как страница «злоумышленника» на домене www.vk-test-auth.com получает Access Token пользователя VK, который авторизовался на сайте www.another-test-domain.com, несмотря на то, что в настройках приложения VK, доступ разрешён только для домена www.another-test-domain.com.


Читать дальше →
Всего голосов 64: ↑63 и ↓1+62
Комментарии17

«ВКонтакте» не платит пользователям за найденные уязвимости

Время на прочтение3 мин
Количество просмотров95K
В конце мая ВКонтакте торжественно объявила о запуске открытой программы вознаграждений за уязвимости. Это, как и некоторые другие события, побудило меня на написание этой статьи. История началась еще в сентября 2014, когда во время написания мною сервиса, основанного на API социальной сети, я обнаружил уязвимость, которая позволяла узнавать как администратора сообщества, сделавшего пост, так и человека предложившего эту запись.

image
Читать дальше →
Всего голосов 144: ↑124 и ↓20+104
Комментарии78

Ближайшие события

Теперь любой сайт может узнать адрес вашей страницы в VK?

Время на прочтение2 мин
Количество просмотров169K
Наткнулся на сервис позволяющий разместить на своём сайте js-код, который определяет ID посетителя без авторизации. Пользователь об этом совершенно не догадывается, т.к. определение ID происходит при загрузке любой страницы сайта без всяких вопросов об авторизации.

Для маркетинга это открывает широкие возможности, но никак не вписывается в мои представления о безопасной передаче персональных данных.

Т.е. например, допустим, занесло вас на какой-то порно-сайт, а через полминуты в контакте бот пишет вам в ЛС или на стене предложение приобрести рекомендуемый именно вам товар или услугу в соответствии с разделами, которые вы посещали на сайте, или в соответствии с поисковыми запросами, через которые вы попали на этот сайт.

Любой сайт после установки этого шпионского скрипта, будет знать о своих посетителях почти всё, в плоть до номера телефона, если он указан. Понятно что пользователи сами несут ответственность за то, какие данные они выкладывают в публичный доступ, но заходя на сторонний сайт я не даю согласия на обработку моих персональных данных.

Создатели сервиса утверждают: «Никакого взлома или иных противоправных действий сервис не осуществляет. Мы идентифицируем заходящего человека и накапливаем открытую информацию.». Но я считаю незаконным сам факт идентифицикации. Поправьте меня если я не прав.

Ретаргетинг вконтакте работает похожим образом, но он не даёт доступ к профилям попавшим в группу ретаргетинга.

Может найдётся кто-то среди хабра-специалистов по вэб-безопасности кто сможет осветить эту тему в деталях?

Читать дальше →
Всего голосов 129: ↑96 и ↓33+63
Комментарии94

Легальный Clickjacking ВКонтакте

Время на прочтение1 мин
Количество просмотров116K
Поговорим о виджете для авторизации.

Нам говорят, что:
С помощью виджета для авторизации Вы можете максимально просто предоставить пользователям возможность авторизовываться на Вашем ресурсе.

Также, нам говорят, что:
В результате авторизации виджет возвращает следующие поля: uid, first_name, last_name, photo, photo_rec, hash.

Читать дальше →
Всего голосов 73: ↑67 и ↓6+61
Комментарии52

«ВКонтакте» обновил документацию API

Время на прочтение1 мин
Количество просмотров28K


Вчера социальная сеть ВКонтакте обновила документацию для разработчиков и запустила баг-трекер.
Под катом обзор новых возможностей документации.
Читать дальше →
Всего голосов 90: ↑74 и ↓16+58
Комментарии60

Вконтакте закрылся для пользователей без мобильного телефона

Время на прочтение2 мин
Количество просмотров206K
Вряд ли осталось много параноиков, не подтвердивших свои страницы в социальной сети ВКонтакте с помощью номера телефона, однако сегодняшнее утро оказалось для них не самым приятным. При попытке открыть веб-версию появляется уведомление о необходимости ввода номера мобильного телефона, и никакие ухищрения обойти эту страницу не помогают. По крайней мере не нашел их я.



Гораздо интереснее обстоит дело с мобильными клиентами: версия ВКонтакте для Android при запуске на секунду показывает ленту друзей, однако затем выбрасывает на страницу авторизации. При попытке ввода логина и пароля приложение просто закрывается. Не очень уж юзер-френдли, особенно для тех, кто не заходил в веб-версию.

Читать дальше →
Всего голосов 172: ↑140 и ↓32+108
Комментарии301

Vreen — простая и удобная библиотека для работы с vk.api

Время на прочтение7 мин
Количество просмотров39K

Представляю вам новую Qt библиотеку для работы с vk api, которая может пригодиться вам при создании любых настольных и мобильных приложений, взаимодействующих с vk. Проект родился из vkontakte плагина для qutIM'а и перерос в отдельную независимую библиотеку, которой теперь может пользоваться каждый.
Читать дальше →
Всего голосов 75: ↑69 и ↓6+63
Комментарии46

Безопасность OAuth2

Время на прочтение5 мин
Количество просмотров117K
Данная блогозапись на хабр прежде всего обусловлена появлением «Ключницы» — хороший повод связать и перевести накопленное.


У нас в программе: вольный пересказ спек OAuth2, слабые стороны и Threat Model, 0day на хабретрюк с аутенфикацией.
image
Читать дальше →
Всего голосов 168: ↑160 и ↓8+152
Комментарии65

Статистика по профилям пользователей ВКонтакте

Время на прочтение6 мин
Количество просмотров98K
В этом посте я приведу статистику по данным, которые указали в своих профилях пользователи социальной сети ВКонтакте. Под катом также содержится ответ на интересующий многих вопрос — сколько всё-таки активных пользователей в этой соцсети? И, разумеется, пара слов о том, как всё это было собрано.
Читать дальше →
Всего голосов 284: ↑274 и ↓10+264
Комментарии237