Обход аутентификации шлюза компании с помощью curl

#gateway

Вопрос:

Я работаю в компании. Когда я получаю доступ к веб-приложению на AWS из браузера, шлюз перенаправляет на страницу аутентификации (работает с прокси-сервером), после аутентификации я могу получить доступ к веб-приложению из браузера. Проблема в том, что, когда я использую curl для вызова api, шлюз все еще перенаправляет мой запрос на страницу аутентификации. Как пройти этот уровень аутентификации?

введите описание изображения здесь

 curl -X GET api-url.com
* HTTP 1.0, assume close after body
< HTTP/1.0 302 Moved Temporarily
< Location: https://company-internet-gateway.com:1234/php/uid.php...
< Content-Length: 0
< Pragma: no-cache
< Cache-Control: no-cache
< 
* Closing connection 0
* TLSv1.2 (OUT), TLS alert, close notify (256):
 

Комментарии:

1. Как работает аутентификация? Является ли это частью приложения (например, OAuth) или частью исходящего прокси-сервера/брандмауэра (например, страница приветствия в общедоступных горячих точках)?

2. @30thh Это прокси

Ответ №1:

Решено!

Я добавил https_proxy с прокси-сервером, после чего curl теперь работал.

 export https_proxy=http://proxy_server:port
 

Ответ №2:

Насколько я понимаю, оба запроса не зависят друг от друга. Сервер аутентификации добавляет ваш MAC-адрес и/или IP-адрес в белый список брандмауэра компании. Затем вы можете получить доступ к любому другому серверу без аутентификации.

Я бы попытался воспроизвести запросы на аутентификацию с помощью curl. Сделайте это в браузере, перехватывайте запросы с помощью инструмента F12 и генерируйте из него команды curl.