Какие-нибудь уязвимости безопасности с этим ответом JSON? - PullRequest
1 голос
/ 11 марта 2019

Мне пришлось обновить форму на определенной веб-странице, чтобы изменить то, что я хотел. Я не смог этого сделать, но вместо того, чтобы отправить простой текстовый ответ, например, «Это не работает», они отправили на дисплей целый JSON-ответ. Мне просто любопытно, представляет ли этот ответ какие-либо уязвимости безопасности для меня или сервера, с которым я связался, чтобы обработать мой запрос?

P.S. *** в ответе так, потому что я не уверен, что предоставление этой информации - правильная вещь. Однако даже без него ответ довольно интуитивен.

Это ответ:

{"name": "StatusCodeError", "statusCode": 409, "message": "409 - [объект объекта]", "error": {"status": "fail", "message" : "Электронная почта уже занята", "code": 91, "data": null, "error": {"message": "None"}}, "options": {"uri": "***** **** "," method ":" POST "," headers ": {" Authorization ":" Bearer ********* = "," Cookie ":" ******** * =; cm_sub = запрещен " "User-Agent": "********", "Accept-Language": "EN-US", "Original-Accept-Language":" **** **** " "X - ******** - InstallId": "*****", "X - ***** - AppState": "активный"," X - ** *** - родитель-рид ":" ******** " "X - ***** - Root-рид": "********"," X - ** *** - Rid ":" *****», "X-Pixel-Ratio": 1, "X - ***** - App-Type": 5, "X-Предпочитают-User-Locale" : "1", "X-Real-Ip": "********", "X - ***** - Real-Ip": "*****", "Х- * **** - CSRF ":" ******** " "X - ***** - Browser-Extension-Installed": "ложь"," X - ******** -Referrer ":" ******** " "X-Bot": "ложь", "X-Referrer": "********", "X-Url":" * ******* "}," форма ": {" base_scheme ":" HTTPS», "client_id": 1431601, "метка": *****, "страна": "США", "электронная почта" : "*****", "oauth_signature": "********"}, "traceId" ложь "parseJson": правда , "ResolveWithFullResponse": правда, "JSON": правда, "простой": истинно}, "ответ": { "StatusCode": 409, "тело": { "статус": "сбой", "сообщение": "* *******», "код" ********, "данные": нулевой, "ошибка": { "сообщение": "None"}}, "заголовки": { "сервер" : "nginx", "date": "Sun, 10 марта 2019 16:08:31 GMT", "content-type": "application / json", "content-length": "112", "connection": " закрыть», "***** - версия": "*****", "X-Content-Type-опций": "*****", "х-каркасные варианты": "ЗАПРЕТИТЬ" "***** - генерируемой с помощью": "********"}, "запрос": { "URI": { "протокол": "HTTP:", "косые": правда, "авторизация": нулевой, "хозяин": "*****", "порт": "*****", "имя хоста": "локальный", "хэш": нулевой, "поиск": нулевой, метод "********"}, ": "запрос": NULL, "имя пути ********", "путь": "/ v3 / пользователей / настройки /", "HREF" ":" POST "," headers ": {" Authorization ":" ******** "," Cookie ********* "," User-Agent ":" Mozilla / 5.0 ( Windows NT 6.3; Win64; x64) AppleWebKit / 537.36 (KHTML, как Gecko) Chrome / ******** Safari / 537.36 "," Accept-Language ":" en-US "," Original-Accept-Language ":" en-US , ан; д = 0,9" , "Х - ***** - InstallId": "********", "Х - ***** - AppState": "активный", "Х- ***** - родитель-рид ":" ******** " "X - ***** - Root-рид":" ************* " "Х - ***** - рид": "*****", "X-пиксельном Отношение": 1, "X - ***** - App-тип": 5," Х -prefer-User-Locale ":" 1" , "X-Real-Ip": "*****", "X - ***** - Real-Ip": "******* * " "X - ******** - CSRF": "********", "X - ***** - Browser-Extension-Installed": "ложь"," X - ******** - Referrer ":" ************* " "X-Bot": "ложь", "X-Referrer":" *** ***** " "X-URL": "********", "Content-Type": "применение / х-WWW-форм-urlencoded", "принимает":" приложения / JSON », "Content-Length": 179}}}}

1 Ответ

1 голос
/ 12 марта 2019

Вот что я узнал из этого ответа сервера.Первое, что я заметил, - ваш протокол использует http.

«protocol»: «http:»

HTTP - это незашифрованная и незашифрованная форма связи.Это важно отметить, потому что, если кто-то отслеживает ваш трафик, он сможет прочитать передачу, как вы разместили ее здесь (без блокирования секретных данных *****).

Следующийчто я заметил, это ваш токен авторизации.

"Авторизация": "Носитель ********* ="

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

С другой стороны, поскольку мы предполагаем, что злоумышленник прослушал ваш незашифрованный трафик,Они также могут записывать информацию о компьютере / браузере вашего клиента:

«Пользователь-агент»: «Mozilla / 5.0 (Windows NT 6.3; Win64; x64) AppleWebKit / 537.36 (KHTML, как Gecko)Chrome / ******** Safari / 537.36 "

Из этой информации злоумышленник может узнать, что клиент использует Windows 8.1 и какие браузеры / версии установлены на компьютере клиента.С помощью этих системных характеристик злоумышленник может запустить целевую атаку на компьютере клиента (особенно если у вас устаревшая / небезопасная версия ОС или браузера).

Итак, чтобы ответить на ваш вопрос, да есть защитауязвимости как для клиента, так и для сервера .

Однако простое переключение с HTTP на HTTPS могло бы существенно повлиять на ограничение вашего воздействия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...