Swiftyinsta: Инстаграм Аякс Войти

Созданный на 14 мая 2020  ·  27Комментарии  ·  Источник: TheM4hd1/SwiftyInsta

Инстаграм только что уничтожил instagram.com/accounts/login/ajax или это только я?
Кажется, я не могу заставить это работать.
😱

Вы не против протестировать базовый процесс аутентификации?
К сожалению, альтернативный вариант потребовал бы слишком много зависимостей в Swift (поскольку он использует как хэши, так и RSA).

@ TheM4hd1


Редактировать: в Swiftagram тоже не работает… 😱 они действительно просто избавились от него?

critical

Все 27 Комментарий

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

Swiftagram BasicAuthenticator.handleSecond возвращает invalid response , я не проверял SwiftyInsta .

Я тоже не могу заставить его работать на SwiftyInsta 😢 @bariscck
Я даже не могу заставить его работать с Insomnia и Postman… 😱
Я надеюсь, что это просто какая-то временная проблема в Instagram, которая может объяснить, что он работает на @TheM4hd1 , находясь в разных регионах…

Это кажется временным, потому что веб-приложение Instagram в настоящее время использует эту конечную точку. У них это тоже не работает. Возвращает 400 Bad Request .

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

Да, это случалось и раньше, но мы возвращали 400 обратно, что разумно.
На этот раз прямой доступ получает 405 . Даже с HEAD .
Я боюсь, что они могут просто мигрировать от него.
Давайте просто скрестим пальцы 🤞

здравствуйте, у меня тоже такая проблема, вы решили?

К сожалению, @Emretelli7 все еще не решен.
Я чувствую, что нам нужно признать, что конечная точка просто исчезла 😢

Привет, теперь в Instagram используется «enc_password» , вы не можете использовать «пароль» .
image
enc_password использовать шифрование AES 256 GCM

https://pastebin.com/raw/nYL2W2bG

@xmmti
я попытался скопировать свой enc_password из набора burp и опубликовать его с моим именем пользователя, но прошел проверку подлинности: false

так что это означает, что я думаю, что есть что-то большее, чем этот enc_password

@xmmti
я попытался скопировать свой enc_password из набора burp и опубликовать его с моим именем пользователя, но прошел проверку подлинности: false

так что это означает, что я думаю, что есть что-то большее, чем этот enc_password

Запрос тела
username= Ваше имя пользователя &enc_password= enc_password
image
Я работаю со мной ...

Ага. Это намного больше, чем просто это. Я намекаю на это в своем первом примечании.
Для нового безголового метода аутентификации требуются инструменты криптографии, которые определенно не являются стандартными для Swift. Хэши довольно легко найти (и они уже есть в SwiftyInsta через CryptoSwift), но я не мог найти надежную библиотеку RSA в прошлом (def не для неактуальных выпусков), и это было бы (по крайней мере) еще одним зависимость.

Вход через API у меня работает нормально... просто ajax его enc_password

Пожалуйста, прочитайте мой комментарий @xmmti.

Мы все прекрасно знаем об исправлении. Мы были еще до того, как написали выпуск, и мы знали, что это должно было случиться рано или поздно.
Дело в том, что исправить это очень просто для Node JS или Python, но определенно не для Swift, потому что нет хорошей библиотеки для криптографии, а CryptoSwift , который в настоящее время требуется SwiftyInsta , или что-либо, основанное на CommonCrypto , в этом отношении, просто не является обширным. достаточно.


Мне нужно заблокировать комментарии к этой теме, потому что больше нечего добавить.Если мы решим реализовать альтернативу (при условии, что нам удастся найти действующую криптографическую библиотеку), мы обновим сообщение.Если вы хотите внести свой вклад, вы можете отправить PR.

@sbertix
привет, я здесь для моего проекта Python, потому что у меня возникла такая же проблема.
Если вы хотите использовать его в своем мобильном приложении, вы можете запустить сервер, на котором выполняется скрипт Python для подключения к вашему мобильному приложению.

Для меня это не проблема @Emretelli7 , но спасибо. 😊
Моя аутентификация уже направлена ​​через приложение узла.
Речь идет о предоставлении базовой аутентификации непосредственно в SwiftyInsta .

Базовый вход в систему теперь работает, я проверил две разные учетные записи с 2FA и без них.

Попробуем использовать swift-sodium для AES-GCM-256.
И SwiftyRSA для части RSA.

Будьте осторожны при добавлении слишком большого количества зависимостей @MatoMA и имейте в виду, что SwiftyRSA не работает на macOS, в то время как swift-sodium — только для iOS и macOS (без Catalyst, без watchOS, без tvOS, без Linux), что означает функцию и дыру библиотека, если она не упакована в другую цель, будет работать только на iOS, где вы уже можете без суеты использовать аутентификацию на основе веб-представления...\
Я попытался реализовать его в SwCrypt (не завершив его из-за нехватки времени), и он показал некоторый потенциал (хотя он по-прежнему ограничен системами с поддержкой OpenCrypto).\
Однако мы можем полностью сравнить реализации, как только закончим.

Будьте осторожны при добавлении слишком большого количества зависимостей @MatoMA и имейте в виду, что SwiftyRSA не работает на macOS, в то время как swift-sodium — только для iOS и macOS (без Catalyst, без watchOS, без tvOS, без Linux), что означает функцию и дыру библиотека, если она не упакована в другую цель, будет работать только на iOS, где вы уже можете без суеты использовать аутентификацию на основе веб-представления...
Я попытался реализовать его в SwCrypt (не завершив его из-за нехватки времени), и он показал некоторый потенциал (хотя он по-прежнему ограничен системами с поддержкой OpenCrypto).
Однако мы можем полностью сравнить реализации, как только закончим.

Спасибо вам большое за ваш ответ.
Мы обнаружили, что около 1/4 пользователей не могут войти в систему с помощью аутентификации веб-просмотра. И нам сложно разобраться в этом вопросе. Вот почему мы хотим, чтобы это работало для Android (Device) API.
И известно, что аутентификация веб-просмотра не работает, если пользователи включают 2FA с приложением Auth (не текстовым сообщением).
Если вышеуказанные библиотеки не работают, у нас все еще есть openssl - последний путь, который мы попробуем...

Не работает вход в систему через веб-интерфейс — это просто проблема с текущей реализацией, и ее определенно легче исправить.\
Я заставил его работать для Swiftagram , я просто импортирую тот же класс в SwiftyInsta , если показатель успеха будет таким плохим.\
В любом случае, наличие резервной копии и правильная работа базовой аутентификации по-прежнему являются приоритетом прямо сейчас, не волнуйтесь 😊

Так что, по-вашему, это лучший способ продвинуться вперед в отношении совместимости, @TheM4hd1?\
Я повторно реализовал BasicAuthenticator в Swiftagram , чтобы мы могли полностью перевести его для SwiftyInsta , но сначала нам нужно остановиться на этом (например, отказ от поддержки Linux, чтобы он работал, минимальные версии ОС, менеджеры зависимостей, так далее).

@sbertix он все еще отключен для вас? кажется, теперь это снова работает для меня.

Я попробовал это на прошлой неделе, и это все еще не сработало.\
По-видимому, это не влияет на все учетные записи, но они активно переносят его (на основе возобновившегося интереса к enc_password в instagram-private-api ).\
Имхо, это тоже нужно решать в SwiftyInsta .

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

как насчет использования openssl ? Думаю, сам Instagram использует openssl . таким образом мы можем сохранить минимальную версию совместимости и совместимость с Linux.

Я искренне ненавижу полагаться на OpenSSL (по крайней мере, напрямую) в Swift (как и большинство людей, хахаха).\
Это определенно "решение", но я не уверен, что его реализация стоит хлопот... @TheM4hd1\
Во что бы то ни стало, если вы хотите это сделать, отлично, в противном случае я все еще чувствую, что переход на что-то «более высокого уровня» должно быть достаточно хорошим.

Я попытался реализовать OpenSSL , он отлично работает в отдельном проекте, но добавив его в качестве зависимости, я не смог этого сделать, потому что требуемые партии работают и увеличивают размер библиотеки.
Если бы это был мой индивидуальный проект, я бы предпочел использовать его для поддержки минимальной версии iOS. но, кажется, для библиотеки этого делать не стоит.
Так что я согласен с переносом SwiftaGram , это лучшее решение на данный момент.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

anonrig picture anonrig  ·  3Комментарии

rmelnik7777 picture rmelnik7777  ·  19Комментарии

biox86 picture biox86  ·  12Комментарии

effecttwins picture effecttwins  ·  16Комментарии

reefer picture reefer  ·  18Комментарии