информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Где водятся OGRыСтрашный баг в WindowsВсе любят мед
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
nichego ne ponyatno. popodrobnee opishi 17.12.01 15:06  Число просмотров: 1274
Автор: XR <eXtremal Research> Статус: The Elderman
<"чистая" ссылка>
> Объясняю подробнее:
> открываю я значит сокет с проксиком и перед тем как сказать
> ему GET мне такую-то страничку, я должен авторизоваться...
> дык вот что ему нужно послать для этого...
> слышал про какую-то байсик-авторизацию...

Авторизация идет не перед а прямо в GET запросе (каждом)
как отдельное поле HTTP заголовка
вот пример HTTP запроса:

GET http://www.server.com HTTP/1.1
Proxy-Authorization: Basic <user:pass - закодированные в base64>

- скобок <> разумеется не нужно
<programming>
[Net] Авторизация на MS Proxy 16.12.01 13:38  
Автор: YURICH Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Как авторизоваться на MS Proxy server?
т.е. какой запрос надо дать серваку?
nichego ne ponyatno. popodrobnee opishi 17.12.01 00:55  
Автор: kabanchik Статус: Незарегистрированный пользователь
<"чистая" ссылка>
nichego ne ponyatno. popodrobnee opishi 17.12.01 09:21  
Автор: YURICH Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Объясняю подробнее:
открываю я значит сокет с проксиком и перед тем как сказать ему GET мне такую-то страничку, я должен авторизоваться...
дык вот что ему нужно послать для этого...
слышал про какую-то байсик-авторизацию...
nichego ne ponyatno. popodrobnee opishi 17.12.01 15:06  
Автор: XR <eXtremal Research> Статус: The Elderman
<"чистая" ссылка>
> Объясняю подробнее:
> открываю я значит сокет с проксиком и перед тем как сказать
> ему GET мне такую-то страничку, я должен авторизоваться...
> дык вот что ему нужно послать для этого...
> слышал про какую-то байсик-авторизацию...

Авторизация идет не перед а прямо в GET запросе (каждом)
как отдельное поле HTTP заголовка
вот пример HTTP запроса:

GET http://www.server.com HTTP/1.1
Proxy-Authorization: Basic <user:pass - закодированные в base64>

- скобок <> разумеется не нужно
вот ещё бы алгоритм шифрования подкинул бы ктонить 18.12.01 13:16  
Автор: YURICH Статус: Незарегистрированный пользователь
<"чистая" ссылка>
вот ещё бы алгоритм шифрования подкинул бы ктонить 18.12.01 15:37  
Автор: XR <eXtremal Research> Статус: The Elderman
<"чистая" ссылка>
Вот кусок из oops на эту тему
#define       BASE64_VALUE_SZ   256
int           base64_value[BASE64_VALUE_SZ];
unsigned char alphabet[64] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
void
base_64_init()
{
int i;

    for (i = 0; i < BASE64_VALUE_SZ; i++)
        base64_value[i] = -1;

    for (i = 0; i < 64; i++)
        base64_value[(int) alphabet[i]] = i;
    base64_value['='] = 0;

}

char*
base64_encode(char *src) {
int             bits, char_count, len;
char            *res, *o_char, *lim, *o_lim;
unsigned char   c;

    if ( !src ) return(NULL);
    len = strlen(src);
    lim = src+len;

    res = xmalloc((len*4)/3+4, "base64_encode(): 1");
    if ( !res )
        return(NULL);
    o_char = res;
    o_lim  = res + (len*4)/3 + 1 ;
    char_count = 0;
    bits = 0;
    while ( (src < lim) && (o_char < o_lim) ) {
        c = *(src++);
        bits += c;
        char_count++;
        if (char_count == 3) {
            *(o_char++) = alphabet[bits >> 18];
            *(o_char++) = alphabet[(bits >> 12) & 0x3f];
            *(o_char++) = alphabet[(bits >> 6) & 0x3f];
            *(o_char++) = alphabet[bits & 0x3f];
            bits = 0;
            char_count = 0;
        } else {
            bits <<= 8;
        }
    }
    if (char_count != 0) {
        bits <<= 16 - (8 * char_count);
        *(o_char++) = alphabet[bits >> 18];
        *(o_char++) = alphabet[(bits >> 12) & 0x3f];
        if (char_count == 1) {
            *(o_char++) = '=';
            *(o_char++) = '=';
        } else {
            *(o_char++) = alphabet[(bits >> 6) & 0x3f];
            *(o_char++) = '=';
            *(o_char) = 0;
        }
    }
    return(res);
}

char *
base64_decode(char *p)
{
char            *result;
int             j;
unsigned int    k;
int             c, base_result_sz;
long            val;

    if (!p)
        return NULL;

    base_result_sz = strlen(p);
    result = xmalloc(base_result_sz+1,"base64_decode(): 1");

    val = c = 0;
    for (j = 0; *p && j + 3 < base_result_sz; p++) {
        k = (int) *p % BASE64_VALUE_SZ;
        if (base64_value[k] < 0)
            continue;
        val <<= 6;
        val += base64_value[k];
        if (++c < 4)
            continue;
        result[j++] = (char) (val >> 16);
        result[j++] = (val >> 8) & 0xff;
        result[j++] = val & 0xff;
        val = c = 0;
    }
    result[j] = 0;
    return result;
}



---
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach