Ошибка 12045 ошибочная авторизация сертификата

Добрый день.
Ситуация следущая:
Есть клиентское приложение. Необходимо качать ресурсы сервера по HTTPS. В случае неправильного сертификата на сервере и InternetOpenUrl и HttpOpenRequest упираются в ошибку 12045 «The certificate authority is invalid or incorrect». Установка флагов INTERNET_FLAG_IGNORE_CERT_CN_INVALID | INTERNET_FLAG_IGNORE_CERT_DATE_INVALID не помогает.
Как проигнорировать эту ошибку?(Переход на http не подходит)
Возможно ли это сделать с WinINet и если нет, то имеет ли смысл переходить на WinHTTP?
Если приложение работает как плагин в Internet Explorer и пользователь согласился с плохим сертификатом при входе на страницу, то ошибка не возникает. Насколько трудно повторить такое поведение для «самостоятельного» приложения? Для плагина в другой браузер(конкретно в мозилу)?

Заранее благодарен за любой ответ.

Здравствуйте, Аноним, Вы писали:

А>Добрый день.

А>Ситуация следущая:
А>Есть клиентское приложение. Необходимо качать ресурсы сервера по HTTPS. В случае неправильного сертификата на сервере и InternetOpenUrl и HttpOpenRequest упираются в ошибку 12045 «The certificate authority is invalid or incorrect». Установка флагов INTERNET_FLAG_IGNORE_CERT_CN_INVALID | INTERNET_FLAG_IGNORE_CERT_DATE_INVALID не помогает.
А>Заранее благодарен за любой ответ.

Проделанного вами мало нужно еще:

DWORD dwFlags;
DWORD dwBuffLen = sizeof(dwFlags);
InternetQueryOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, (LPVOID)&dwFlags, &dwBuffLen);
dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA;
InternetSetOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, sizeof(dwFlags));

Здравствуйте, pjBrain, Вы писали:

B>

B>DWORD dwFlags;
B>DWORD dwBuffLen = sizeof(dwFlags);
B>InternetQueryOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, (LPVOID)&dwFlags, &dwBuffLen);
B>dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA;
B>InternetSetOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, sizeof(dwFlags));
B>

Работает!
Совсем упустил из виду такую возможность.
Очень большое спасибо!

Здравствуйте, pjBrain, Вы писали:

B>Здравствуйте, Аноним, Вы писали:


А>>Добрый день.

А>>Ситуация следущая:
А>>Есть клиентское приложение. Необходимо качать ресурсы сервера по HTTPS. В случае неправильного сертификата на сервере и InternetOpenUrl и HttpOpenRequest упираются в ошибку 12045 «The certificate authority is invalid or incorrect». Установка флагов INTERNET_FLAG_IGNORE_CERT_CN_INVALID | INTERNET_FLAG_IGNORE_CERT_DATE_INVALID не помогает.
А>>Заранее благодарен за любой ответ.

B>Проделанного вами мало нужно еще:


B>

B>DWORD dwFlags;
B>DWORD dwBuffLen = sizeof(dwFlags);
B>InternetQueryOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, (LPVOID)&dwFlags, &dwBuffLen);
B>dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA;
B>InternetSetOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, sizeof(dwFlags));
B>

InternetQueryOption возвращает 0 и выбрасывает ошибку 12018 (ERROR_INTERNET_INCORRECT_HANDLE_TYPE) . Передаю хэндл от InternetOpen. Я что-то не так делаю?

Решил проблему путем импорта сертификата узла.

CERT_STORE_ADD_NEW    equ 1
X509_ASN_ENCODING    equ 1
PKCS_7_ASN_ENCODING    equ 00010000h


ImportCertificate proc lpszCertFile:LPSTR
local hCertStore:HANDLE
local hFile:HFILE
local dwSize:DWORD
local lpData:LPVOID

    invoke CreateFile, lpszCertFile, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0
    .if eax != -1
        mov hFile, eax
        invoke GetFileSize, eax, 0
        mov dwSize, eax
        invoke LocalAlloc, LPTR, eax
        .if eax != 0
            mov lpData, eax
            invoke ReadFile, hFile, lpData, dwSize, addr dwSize, 0
            .if eax == TRUE
                invoke CertOpenSystemStore, 0, CTXT("Root")
                invoke CertAddEncodedCertificateToStore, eax, X509_ASN_ENCODING + PKCS_7_ASN_ENCODING, lpData, dwSize, CERT_STORE_ADD_NEW, NULL
            .endif
            invoke LocalFree, lpData
        .endif
        invoke CloseHandle, hFile
    .endif
    
    ret
ImportCertificate endp
  • Download sourcecode — 6.45 Kb

Introduction

I’ve recently needed to make a Secure Sockets Layer (SSL) connection to Visa server and send our signed client certificate in order to make our MPI application authorized. I searched many articles but could find just a few ones about the subject. I collected parts of the solution from different articles and MSDN, and implemented a simple class that performs this operation programmatically.

There’s InternetErrorDlg API for some purposes including sending client certificate modeling a selection dialog to the user. But in many cases, the programmer may require authentication without user interface (i.e. user interface requires an OK clicker J.. This might be useless for us if we want our program to do things automatically). This is done here by InternetSetOption() with INTERNET_OPTION_CLIENT_CERT_CONTEXT flag. Don’t forget that this option only works with Internet Explorer 5.01 or later (as MSDN writes).

INTERNET_OPTION_CLIENT_CERT_CONTEXT flag is not included in VC6.0 default headers. If you’ve platform SDK installed, that’s no problem, include the wininet header in sdk/include directory, else you may define it manually;

#define INTERNET_OPTION_CLIENT_CERT_CONTEXT 84

That should be ok if you don’t have old wininet.dll versions.

For readers who are not familiar with wininet, SSL or certificates:

I am not gonna tell what wininet functions do & how they are used nor about the certificates. These are generic subjects and much information can be gathered from so many resources such as MSDN. I will try to answer the questions if you send an email to me.

Well, the flow is simple. First we connect to the HTTPS server and send a HTTPS request. If the server asks for a signed client certificate, we open and dig through the system store(s) for the certificate context we need. Then resend our request but after attaching the certificate context. If the server is satisfied, we are authenticated.

  • ConnectToHttpsServer() summarizes the flow of the connection. This is the initial place.
  • SendHttpsRequest() sends a request. After that, if the server requires client certificate, we search it in the system store. If we find it, InternetSetOption() attaches the context to the connection. Then we try the SendHttpsRequest() again.

A sample usage of the class can be like this:

CSslConnection inetSec;
string sAgentName("My Firm"); 
string sServerName("207.219.70.31");
string sUserName("");
string sPass("");
string sObjectName("/xxx.asp");
string sOrganizationUnitName("3-D Secure Compliance TestFacility"); 
string strVerb = "POST";

inetSec.SetAgentName(sAgentName); 

inetSec.SetCertStoreType(certStoreMY); 
         
         

inetSec.SetObjectName(sObjectName);      

inetSec.SetOrganizationName(sOrganizationUnitName); 

inetSec.SetPort(9660);
inetSec.SetServerName(sServerName); 

inetSec.SetRequestID(0); 

if (!inetSec.ConnectToHttpsServer(strVerb)) { 

    cout << inetSec.GetLastErrorString()  << " Code: " 
       << inetSec.GetLastErrorCode(); << endl; 
    return 0; 
} 

if (!inetSec.SendHttpsRequest()) 
{ 
    cout << inetSec.GetLastErrorString() << " Code: " 
        << inetSec.GetLastErrorCode(); << endl
    return 0; 
} 

string response = inetSec.GetRequestResult(); 
cout << response.c_str() << endl;

The “organization name” notated functions and variables are completely sample. I chose using “O value of the issuer field” in the certificate, that’s my search criteria. You may wish to perform store search by different fields. Because, there are many fields in a certificate and a context search can be performed by any of these.

You may possibly add your own functions instead of using FindCertWithOUNITName() function. If you do that, just change the code calling this function (only in 1 place) and provide some variables and accessors which are suitable for your certificate search criteria.

This member has not yet provided a Biography. Assume it’s interesting and varied, and probably something to do with programming.

  • Download sourcecode — 6.45 Kb

Introduction

I’ve recently needed to make a Secure Sockets Layer (SSL) connection to Visa server and send our signed client certificate in order to make our MPI application authorized. I searched many articles but could find just a few ones about the subject. I collected parts of the solution from different articles and MSDN, and implemented a simple class that performs this operation programmatically.

There’s InternetErrorDlg API for some purposes including sending client certificate modeling a selection dialog to the user. But in many cases, the programmer may require authentication without user interface (i.e. user interface requires an OK clicker J.. This might be useless for us if we want our program to do things automatically). This is done here by InternetSetOption() with INTERNET_OPTION_CLIENT_CERT_CONTEXT flag. Don’t forget that this option only works with Internet Explorer 5.01 or later (as MSDN writes).

INTERNET_OPTION_CLIENT_CERT_CONTEXT flag is not included in VC6.0 default headers. If you’ve platform SDK installed, that’s no problem, include the wininet header in sdk/include directory, else you may define it manually;

#define INTERNET_OPTION_CLIENT_CERT_CONTEXT 84

That should be ok if you don’t have old wininet.dll versions.

For readers who are not familiar with wininet, SSL or certificates:

I am not gonna tell what wininet functions do & how they are used nor about the certificates. These are generic subjects and much information can be gathered from so many resources such as MSDN. I will try to answer the questions if you send an email to me.

Well, the flow is simple. First we connect to the HTTPS server and send a HTTPS request. If the server asks for a signed client certificate, we open and dig through the system store(s) for the certificate context we need. Then resend our request but after attaching the certificate context. If the server is satisfied, we are authenticated.

  • ConnectToHttpsServer() summarizes the flow of the connection. This is the initial place.
  • SendHttpsRequest() sends a request. After that, if the server requires client certificate, we search it in the system store. If we find it, InternetSetOption() attaches the context to the connection. Then we try the SendHttpsRequest() again.

A sample usage of the class can be like this:

CSslConnection inetSec;
string sAgentName("My Firm"); 
string sServerName("207.219.70.31");
string sUserName("");
string sPass("");
string sObjectName("/xxx.asp");
string sOrganizationUnitName("3-D Secure Compliance TestFacility"); 
string strVerb = "POST";

inetSec.SetAgentName(sAgentName); 

inetSec.SetCertStoreType(certStoreMY); 
         
         

inetSec.SetObjectName(sObjectName);      

inetSec.SetOrganizationName(sOrganizationUnitName); 

inetSec.SetPort(9660);
inetSec.SetServerName(sServerName); 

inetSec.SetRequestID(0); 

if (!inetSec.ConnectToHttpsServer(strVerb)) { 

    cout << inetSec.GetLastErrorString()  << " Code: " 
       << inetSec.GetLastErrorCode(); << endl; 
    return 0; 
} 

if (!inetSec.SendHttpsRequest()) 
{ 
    cout << inetSec.GetLastErrorString() << " Code: " 
        << inetSec.GetLastErrorCode(); << endl
    return 0; 
} 

string response = inetSec.GetRequestResult(); 
cout << response.c_str() << endl;

The “organization name” notated functions and variables are completely sample. I chose using “O value of the issuer field” in the certificate, that’s my search criteria. You may wish to perform store search by different fields. Because, there are many fields in a certificate and a context search can be performed by any of these.

You may possibly add your own functions instead of using FindCertWithOUNITName() function. If you do that, just change the code calling this function (only in 1 place) and provide some variables and accessors which are suitable for your certificate search criteria.

This member has not yet provided a Biography. Assume it’s interesting and varied, and probably something to do with programming.


Как устранить сообщения об ошибках «Отсутствует / Не найден 12045.orb_r.dll»

Как правило, подобные ошибки DLL, связанные с JBuilder Professional & Enterprise Server All Editions, возникают в результате повреждения или отсутствия файлов 12045.orb_r.dll. Для устранения неполадок, связанных с файлом DLL, большинство профессионалов ПК заменят файл на соответствующую версию. В качестве дополнительного шага по устранению неполадок мы настоятельно рекомендуем очистить все пути к неверным файлам и ссылки на расширения файлов DLL, которые могут способствовать возникновению такого рода ошибок, связанных с 12045.orb_r.dll.

Формат Dynamic Link Library, известный как собственный формат Системные файлы, чаще всего имеет расширение DLL. Загрузите новую версию 12045.orb_r.dll для %%os%% в списке файлов ниже. Также доступны варианты для других версий Windows (при необходимости). Если в настоящий момент отсутствует необходимая вам версия 12045.orb_r.dll, запросите ей, нажав на кнопку Request (Запрос) рядом с необходимой версией файла. Кроме того, Borland Software Corp. также может предоставить вам некоторые редкие файлы, которые отсутствуют в нашем каталоге.

После успешного размещения файла в соответствующем месте на жёстком диске подобных проблем, связанных с 12045.orb_r.dll, больше возникать не должно. Настоятельно рекомендуем выполнить быструю проверку. Вы можете проверить результат, запустив приложение JBuilder Professional & Enterprise Server All Editions и проверить, появляется ли проблема.

12045.orb_r.dll Описание файла
File: DLL
Категория: Server,web application
Новейшие программы: JBuilder Professional & Enterprise Server All Editions
Вер: 2002
Автор: Borland Software Corp.
 
Имя файла: 12045.orb_r.dll  
Размер: 77
SHA-1: 7abf70d2333e5ca526a59cb6dc7b12295dea8605
MD5: 7759aaf23e35aaf43a53456be64aa549
CRC32: 60c2a682

Продукт Solvusoft

Загрузка
WinThruster 2023 — Сканировать ваш компьютер на наличие ошибок реестра в 12045.orb_r.dll

Windows
11/10/8/7/Vista/XP

Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление

DLL
12045.orb_r.dll

Идентификатор статьи:   614995

12045.orb_r.dll

File MD5 Размер Загрузить
+ 12045.orb_r.dll 7759aaf23e35aaf43a53456be64aa549 77.00 B
Application JBuilder Professional & Enterprise Server All Editions 2002
Программист Borland Software Corp.
Версия Solaris x32
Архитектура 64-разрядная (x64)
Размер 77
MD5 7759aaf23e35aaf43a53456be64aa549
Контрольная сумма SHA1 7abf70d2333e5ca526a59cb6dc7b12295dea8605
CRC32: 60c2a682
+ 12045.orb_r.dll 7759aaf23e35aaf43a53456be64aa549 77.00 B
Application JBuilder Professional & Enterprise Server All Editions 2002
Программист Borland Software Corp.
Версия Mac OS
Архитектура 64-разрядная (x64)
Размер 77
MD5 7759aaf23e35aaf43a53456be64aa549
Контрольная сумма SHA1 7abf70d2333e5ca526a59cb6dc7b12295dea8605
CRC32: 60c2a682
+ 12045.orb_r.dll 7759aaf23e35aaf43a53456be64aa549 77.00 B
Application JBuilder Professional & Enterprise Server All Editions 2002
Программист Borland Software Corp.
Версия Linux
Архитектура 64-разрядная (x64)
Размер 77
MD5 7759aaf23e35aaf43a53456be64aa549
Контрольная сумма SHA1 7abf70d2333e5ca526a59cb6dc7b12295dea8605
CRC32: 60c2a682
+ 12045.orb_r.dll 7759aaf23e35aaf43a53456be64aa549 77.00 B
Application JBuilder Professional & Enterprise Server All Editions 2002
Программист Borland Software Corp.
Версия Solaris
Архитектура 64-разрядная (x64)
Размер 77
MD5 7759aaf23e35aaf43a53456be64aa549
Контрольная сумма SHA1 7abf70d2333e5ca526a59cb6dc7b12295dea8605
CRC32: 60c2a682
+ 12045.orb_r.dll 7759aaf23e35aaf43a53456be64aa549 77.00 B
Application JBuilder Professional & Enterprise Server All Editions 2002
Программист Borland Software Corp.
Версия Windows 10
Архитектура 64-разрядная (x64)
Размер 77
MD5 7759aaf23e35aaf43a53456be64aa549
Контрольная сумма SHA1 7abf70d2333e5ca526a59cb6dc7b12295dea8605
CRC32: 60c2a682
каталог C:WindowsSystem32

Ошибки 12045.orb_r.dll

Наиболее распространенные ошибки 12045.orb_r.dll, которые могут возникнуть на компьютере под управлением Windows, перечислены ниже:

  • «Отсутствует файл 12045.orb_r.dll.»
  • «Отсутствует 12045.orb_r.dll. «
  • «12045.orb_r.dll нарушение прав доступа.»
  • «Файл 12045.orb_r.dll не удалось зарегистрировать.»
  • «Файл C:WindowsSystem3212045.orb_r.dll не найден.»
  • «Не удалось запустить JBuilder Professional & Enterprise Server All Editions. Отсутствует необходимый компонент: 12045.orb_r.dll. Пожалуйста, установите JBuilder Professional & Enterprise Server All Editions заново.»
  • «Не удалось выполнить приложение, так как 12045.orb_r.dll не найден. Повторная установка JBuilder Professional & Enterprise Server All Editions может решить проблему. «

Проблемы 12045.orb_r.dll, связанные с JBuilder Professional & Enterprise Server All Editionss, возникают во время установки, при запуске или завершении работы программного обеспечения, связанного с 12045.orb_r.dll, или во время процесса установки Windows. Выделение при возникновении ошибок 12045.orb_r.dll имеет первостепенное значение для поиска причины проблем JBuilder Professional & Enterprise Server All Editions и сообщения о них Borland Software Corp. за помощью.

Источник ошибок 12045.orb_r.dll

Отсутствующий файл 12045.orb_r.dll (или поврежденный файл 12045.orb_r.dll) обычно является источником проблемы. Внешние файлы, такие как 12045.orb_r.dll, создают проблемы высокой вероятности с JBuilder Professional & Enterprise Server All Editions.

Повреждение 12045.orb_r.dll происходит во время неожиданного завершения работы, вирусов или других проблем, связанных с JBuilder Professional & Enterprise Server All Editionss. Когда файл 12045.orb_r.dll поврежден, он не может быть загружен должным образом и представит сообщение об ошибке.

Кроме того проблемы 12045.orb_r.dll вызваны плохими ссылками, связанными с JBuilder Professional & Enterprise Server All Editionss в реестре Windows. Сломанные ссылки на DLL-файлы могут помешать правильной регистрации файла DLL, давая вам ошибку 12045.orb_r.dll Неверная установка/удаление JBuilder Professional & Enterprise Server All Editions, 12045.orb_r.dll, который перемещен, или отсутствующий 12045.orb_r.dll может создать эти неработающие ссылки на путь к файлам.

В первую очередь, проблемы с 12045.orb_r.dll, созданные:

  • Недопустимая (поврежденная) запись реестра 12045.orb_r.dll.
  • Вирус или вредоносное ПО поврежден 12045.orb_r.dll.
  • НеисправностьОборудование, связанное с Borland Software Corp., вызывает повреждение 12045.orb_r.dll (может помочь ContactBorland Software Corp.).
  • Требуется версия другого программного обеспечения перезаписала версию 12045.orb_r.dll.
  • Другая программа (не связанная с JBuilder Professional & Enterprise Server All Editions) удалила 12045.orb_r.dll по ошибке (или злонамеренно).
  • Другая программа (не связанная с JBuilder Professional & Enterprise Server All Editions) удалила 12045.orb_r.dll по ошибке (или злонамеренно).

#1

Backspace

    Newbie

  • Posters
  • 17 Сообщений:

Отправлено 07 Сентябрь 2009 — 03:09

Здраствуйте, с недавних пор перестал обновлятся DrWeb v5, в логе появляются записи вида

«2009-09-07, 04:59:55 Прием drweb32.lst завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)»

Настройки не трогались несколько месяцев, переустановка «вэба» не помогает, работал на журнальных ключах, кончились, поставил временно ключ для бета-тестеров, с ним обновления так же не работают, куда копать?

  • Наверх

#2


Malex

Malex

    спасатель

  • Posters
  • 1 070 Сообщений:

Отправлено 07 Сентябрь 2009 — 03:13

Здраствуйте, с недавних пор перестал обновлятся DrWeb v5, в логе появляются записи вида

«2009-09-07, 04:59:55 Прием drweb32.lst завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)»

Настройки не трогались несколько месяцев, переустановка «вэба» не помогает, работал на журнальных ключах, кончились, поставил временно ключ для бета-тестеров, с ним обновления так же не работают, куда копать?

Вы, пожалуйста, лог обновления приложите полностью.

Официальный сертифицированный пользователь ПАК:
PC3000 UDMA & Data Extractor (производитель НПП АСЕ), Raid Explorer (производитель СОФТ-ЦЕНТР), Flash Extractor & Image Explorer (производитель СОФТ-ЦЕНТР), Victoria Full version (автор Сергей Казанский), R-Studio Data Recovery (производитель R-Tools Technology Inc.), GetDataBack for FAT (производитель Runtime Software), GetDataBack for NTFS (производитель Runtime Software), собственные разработки.

  • Наверх

#3


Backspace

Backspace

    Newbie

  • Posters
  • 17 Сообщений:

Отправлено 07 Сентябрь 2009 — 03:53

2009-09-07, 04:59:54 Status code: 0

2009-09-07, 04:59:54 Server response:

2009-09-07, 04:59:54

2009-09-07, 04:59:54 Поиск drweb32.lst.lzma…
2009-09-07, 04:59:54 Прием drweb32.lst.lzma завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)
2009-09-07, 04:59:55 Прием drweb32.lst.lzma завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)
2009-09-07, 04:59:55 Прием drweb32.lst.lzma завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)
2009-09-07, 04:59:55 Client request:

2009-09-07, 04:59:55 GET /nonauth/login.php?dest=Q==&ID=OTIz&DBL=0 HTTP/1.1
Accept: */*
X-DrWeb-Validate: 86e9bee80e85f09e63d0e9b1
X-DrWeb-KeyNumber: 0010964
User-Agent: DrWebUpdate-5.00.3.06011 (windows: 5.01.2600)
Connection: Keep-Alive
Cache-Control: no-cache

2009-09-07, 04:59:55 Status code: 0

2009-09-07, 04:59:55 Server response:

2009-09-07, 04:59:55

2009-09-07, 04:59:55 Поиск drweb32.lst…
2009-09-07, 04:59:55 Прием drweb32.lst завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)
2009-09-07, 04:59:55 Прием drweb32.lst завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)
2009-09-07, 04:59:55 Прием drweb32.lst завершился из-за ошибки (The certificate authority is invalid or incorrect — 12045)
2009-09-07, 04:59:55 Client request:

2009-09-07, 04:59:55 GET /nonauth/login.php?dest=Q=&ID=OTIz&DBL=0 HTTP/1.1
Accept: */*
X-DrWeb-Validate: 86e9bee80e85f04a8a6563d0e9b1
X-DrWeb-KeyNumber: 0019564
User-Agent: DrWebUpdate-5.00.3.06011 (windows: 5.01.2600)
Connection: Keep-Alive
Cache-Control: no-cache

2009-09-07, 04:59:55 Status code: 0

2009-09-07, 04:59:55 Server response:

2009-09-07, 04:59:55

2009-09-07, 04:59:55 Ошибка получения списка обновляемых файлов
2009-09-07, 04:59:55 Связь прервана
2009-09-07, 04:59:55 Отключены

2009-09-07, 05:00:39 =============================================================================

  • Наверх

#4


pig

pig

    Бредогенератор

  • Helpers
  • 10 828 Сообщений:

Отправлено 07 Сентябрь 2009 — 05:48

Что-то с настройками прокси, похоже. GET /nonauth/login.php и так далее — это явно не то, что апдейтер запрашивает у wininet.dll.
А больше ничего сказать пока нельзя, потому что лог опять неполный. Просили же — сессию полностью.

Почтовый сервер Eserv тоже работает с Dr.Web

  • Наверх

#5


Konstantin Yudin

Konstantin Yudin

    Смотрящий

  • Dr.Web Staff
  • 19 449 Сообщений:

Отправлено 07 Сентябрь 2009 — 09:46

разбирайтесь со своим прокси-сервером. ;)

With best regards, Konstantin Yudin
Doctor Web, Ltd.

  • Наверх

#6


Backspace

Backspace

    Newbie

  • Posters
  • 17 Сообщений:

Отправлено 08 Сентябрь 2009 — 06:08

Спасибо за помощь, разобрался, некорректно перенастроил Kerio WinRoute в конце августа, вот и ошибка с авторизацией.

  • Наверх

Обсуждение работы программы

drserj Дата: Пятница, 17.03.2017, 09:18 | Сообщение # 1261

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата 1_абрам ()

Не нашел только как можно изменить директорию c:shttpswww.

правой кнопкой по иконке в трее пункт setting или поправь ручками http.cfg


drSerj

 
1_абрам Дата: Пятница, 17.03.2017, 10:28 | Сообщение # 1262

Генералиссимус

Группа: Друзья

Сообщений: 1207

Репутация: 0

Статус: Offline

Цитата drserj ()

правой кнопкой по иконке в трее пункт setting

Черт, там в setting  оказывается прокрутка  есть,  не заметил. Спасибо.

 
drserj Дата: Пятница, 17.03.2017, 10:41 | Сообщение # 1263

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата 1_абрам ()

Спасибо

немазашо


drSerj

 
getw22 Дата: Пятница, 17.03.2017, 11:44 | Сообщение # 1264

Рядовой

Группа: Пользователи

Сообщений: 4

Репутация: 0

Статус: Offline

Здравствуйте!
При импорте базы получаю следующее:
0:17:08: Закачивается libavtor.sql.gz… Ok
10:17:12: Закачивается libavtors.sql.gz… Ok
10:17:14: Закачивается libbook.sql.gz… Ok
10:17:32: Закачивается libgenre.sql.gz… Ok
10:17:35: Закачивается libgenremeta.sql.gz… Ok
10:17:36: Закачивается libgenres.sql.gz… Ok
10:17:37: Закачивается libseq.sql.gz… Ok
10:17:39: Закачивается libseqs.sql.gz… Ok
10:17:40: Распаковка libavtor.sql.gz… Ok
10:17:41: Распаковка libavtors.sql.gz… Ok
10:17:41: Распаковка libbook.sql.gz… Ok
10:17:44: Распаковка libgenre.sql.gz… Ok
10:17:45: Распаковка libgenremeta.sql.gz… Ok
10:17:45: Распаковка libgenres.sql.gz… Ok
10:17:45: Распаковка libseq.sql.gz… Ok
10:17:45: Распаковка libseqs.sql.gz… Ok
10:17:45: Импортируется lib.libavtor.sql …Ok
10:17:52: Импортируется lib.libavtorname.sql …Ok
10:18:38: Импортируется lib.libbook.sql …Ok
10:19:43: Импортируется lib.libfilename.sql …Ok
10:19:44: Импортируется lib.libfilenameold.sql …Ok
10:19:47: Импортируется lib.libgenre.sql …Ok
10:19:51: Импортируется lib.libgenremeta.sql …Ok
10:19:51: Импортируется lib.libgenrelist.sql …Ok
10:19:51: Импортируется lib.libseq.sql …Ok
10:19:54: Импортируется lib.libseqname.sql …Ok
10:19:55: Импортируется lib.convert.sql …
10:20:47: 
#42S22Unknown column ‘srclang’ in ‘field list’
10:23:51: Ошибка импорта базы. База обновлена не будет.
Пробовал и под администратором. Результат тот же.

 
drserj Дата: Пятница, 17.03.2017, 11:46 | Сообщение # 1265

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата getw22 ()

Пробовал и под администратором. Результат тот же.

я так понимаю, разговор про сайт librusec.pro а не lib.rus.ec?


drSerj

 
getw22 Дата: Пятница, 17.03.2017, 12:06 | Сообщение # 1266

Рядовой

Группа: Пользователи

Сообщений: 4

Репутация: 0

Статус: Offline

С  lib.rus.ec вообще не качает, говорит «Дата файлов базы данных не определена» и далее:

Ошибка
12:01:37: Ошибочная авторизация сертификата (12045)

Добавлено (17.03.2017, 10:06)
———————————————
Забыл написать, старая версия (MultiLib1.8.160623.U) обновляется без проблем.

 
drserj Дата: Пятница, 17.03.2017, 12:11 | Сообщение # 1267

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата getw22 ()

С  lib.rus.ec вообще не качает

Значит Ваш провайдер блокирует либрус, что есть печально. Варианты обхода есть, но обсуждать это надо явно не тут.

По поводу librusec.pro — это уже не совсем либрусек, скорее совсем не либрусек. За основу взяли купленные базы либруса, но потом решили «облагородить» новое детище и внесли массу изменений в том числе и для скачки файла. Для базы я исправил (точнее написал новый) плагин ссылка была где-то выше), но качать книги он не будет. Я поковырялся, кое-что получилось, но далеко не всё. В частности — авторизация, без которой скачиваются не все книги.

Так что 3 варианта развития событий:
1.Пользуем Флибусту, там всё Ок
2.Ищем способы обхода блокировки настоящего либруса (в инете масса материала)
3.Ждем, пока я скину более-менее рабочий плагин для либруслиб.про


drSerj

 
getw22 Дата: Пятница, 17.03.2017, 12:32 | Сообщение # 1268

Рядовой

Группа: Пользователи

Сообщений: 4

Репутация: 0

Статус: Offline

Как я писал, старая версия программы все нормально качает с librusec.pro, я имею ввиду базу, и устанавливает в библиотеку. А новая версия скачивает нормально, а ошибка, как я понимаю, возникает на этапе импорта. lib.rus.ec действительно заблокирован. Файлы книг мне качать не надо.

 
1_абрам Дата: Пятница, 17.03.2017, 12:37 | Сообщение # 1269

Генералиссимус

Группа: Друзья

Сообщений: 1207

Репутация: 0

Статус: Offline

Цитата drserj ()

немазашо

 

Да,  в принципе все работает, но все таки получились костыли. Думаю, что описанную мной задачу лучше решать или тора.  Остаюсь при своем мнении (очень у меня чувство прекрасного развито),   что флаг в ImportDB.exe  нужен.  Просто для симметрии.

Но в любом случае мне было полезно разобраться с shttps.  Спасибо,  что посвятил.  Маленький вопрос,  у меня shttps работала в локальной сети http://127.0.0.1/  можно ли сделать с ее помощью тоже самое в интернете, учитывая, что  у меня динамический ip адрес.

 
drserj Дата: Пятница, 17.03.2017, 13:03 | Сообщение # 1270

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата getw22 ()

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

Если просто базу — то вот пока это: https://yadi.sk/d/gwIJbbte3EKG79 пароль multilib
Распаковать в каталог plugins
При запуске мастера создания новой библиотеки появится еще и либруслиб.про


drSerj

 
drserj Дата: Пятница, 17.03.2017, 13:05 | Сообщение # 1271

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата 1_абрам ()

флаг в ImportDB.exe

потом. слишком много мест, где править. и прога и все плаги переписывать…

Цитата 1_абрам ()

можно ли сделать с ее помощью тоже самое в интернете, учитывая, что  у меня динамический ip адрес.

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


drSerj

 
getw22 Дата: Пятница, 17.03.2017, 14:55 | Сообщение # 1272

Рядовой

Группа: Пользователи

Сообщений: 4

Репутация: 0

Статус: Offline

C либруслиб.про получилось. С либруслиб не получается даже через анонимные прокси. Не подскажете в чем дело?
Так же не получилось в ручную.

 
1_абрам Дата: Пятница, 17.03.2017, 15:19 | Сообщение # 1273

Генералиссимус

Группа: Друзья

Сообщений: 1207

Репутация: 0

Статус: Offline

Цитата drserj ()

потом. слишком много мест, где править. и прога и все плаги переписывать…

Думаю, что это стоит делать в случаи переделки ImportDB.exe  (и вставить флаг попутно), либо если этот флаг  действительно будет необходим.  Моя ситуация — не тот случай.  Она не очень характерна и м.б. решена  с помощью i2p или тора.

Добавлено (17.03.2017, 13:19)
———————————————

Цитата drserj ()

если серая подсетка

Похоже серая — ip =192.168…….

 
drserj Дата: Пятница, 17.03.2017, 16:07 | Сообщение # 1274

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата 1_абрам ()

C либруслиб.про получилось.

Уже радует

Цитата getw22 ()

С либруслиб не получается даже через анонимные прокси. Не подскажете в чем дело?

А это уже вопрос к провайдеру — как он умудрился заблокировать… Тут, к сожалению, я не могу помочь… Просто надо все варианты обхода перебирать. Хотя с прокси — странно, может на тех IP тоже заблокировано? smile


drSerj

 
drserj Дата: Пятница, 17.03.2017, 16:09 | Сообщение # 1275

Генералиссимус

Группа: Администраторы

Сообщений: 4693

Репутация: 30

Статус: Offline

Цитата 1_абрам ()

Похоже серая

стопудово серая… тогда только той прогой, что я недавно говорил… она создает между несколькими компами внутреннюю сетку типа 10.х.х.х и можно компам общаться через инет как будто они в одной подсети


drSerj

 
  • Страница 85 из 158
  • «
  • 1
  • 2
  • 83
  • 84
  • 85
  • 86
  • 87
  • 157
  • 158
  • »

Добрый день.
Ситуация следущая:
Есть клиентское приложение. Необходимо качать ресурсы сервера по HTTPS. В случае неправильного сертификата на сервере и InternetOpenUrl и HttpOpenRequest упираются в ошибку 12045 «The certificate authority is invalid or incorrect». Установка флагов INTERNET_FLAG_IGNORE_CERT_CN_INVALID | INTERNET_FLAG_IGNORE_CERT_DATE_INVALID не помогает.
Как проигнорировать эту ошибку?(Переход на http не подходит)
Возможно ли это сделать с WinINet и если нет, то имеет ли смысл переходить на WinHTTP?
Если приложение работает как плагин в Internet Explorer и пользователь согласился с плохим сертификатом при входе на страницу, то ошибка не возникает. Насколько трудно повторить такое поведение для «самостоятельного» приложения? Для плагина в другой браузер(конкретно в мозилу)?

Заранее благодарен за любой ответ.

Здравствуйте, Аноним, Вы писали:

А>Добрый день.

А>Ситуация следущая:
А>Есть клиентское приложение. Необходимо качать ресурсы сервера по HTTPS. В случае неправильного сертификата на сервере и InternetOpenUrl и HttpOpenRequest упираются в ошибку 12045 «The certificate authority is invalid or incorrect». Установка флагов INTERNET_FLAG_IGNORE_CERT_CN_INVALID | INTERNET_FLAG_IGNORE_CERT_DATE_INVALID не помогает.
А>Заранее благодарен за любой ответ.

Проделанного вами мало нужно еще:

DWORD dwFlags;
DWORD dwBuffLen = sizeof(dwFlags);
InternetQueryOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, (LPVOID)&dwFlags, &dwBuffLen);
dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA;
InternetSetOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, sizeof(dwFlags));

Здравствуйте, pjBrain, Вы писали:

B>

B>DWORD dwFlags;
B>DWORD dwBuffLen = sizeof(dwFlags);
B>InternetQueryOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, (LPVOID)&dwFlags, &dwBuffLen);
B>dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA;
B>InternetSetOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, sizeof(dwFlags));
B>

Работает!
Совсем упустил из виду такую возможность.
Очень большое спасибо!

Здравствуйте, pjBrain, Вы писали:

B>Здравствуйте, Аноним, Вы писали:


А>>Добрый день.

А>>Ситуация следущая:
А>>Есть клиентское приложение. Необходимо качать ресурсы сервера по HTTPS. В случае неправильного сертификата на сервере и InternetOpenUrl и HttpOpenRequest упираются в ошибку 12045 «The certificate authority is invalid or incorrect». Установка флагов INTERNET_FLAG_IGNORE_CERT_CN_INVALID | INTERNET_FLAG_IGNORE_CERT_DATE_INVALID не помогает.
А>>Заранее благодарен за любой ответ.

B>Проделанного вами мало нужно еще:


B>

B>DWORD dwFlags;
B>DWORD dwBuffLen = sizeof(dwFlags);
B>InternetQueryOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, (LPVOID)&dwFlags, &dwBuffLen);
B>dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA;
B>InternetSetOption(hRequest, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, sizeof(dwFlags));
B>

InternetQueryOption возвращает 0 и выбрасывает ошибку 12018 (ERROR_INTERNET_INCORRECT_HANDLE_TYPE) . Передаю хэндл от InternetOpen. Я что-то не так делаю?

Решил проблему путем импорта сертификата узла.

CERT_STORE_ADD_NEW    equ 1
X509_ASN_ENCODING    equ 1
PKCS_7_ASN_ENCODING    equ 00010000h


ImportCertificate proc lpszCertFile:LPSTR
local hCertStore:HANDLE
local hFile:HFILE
local dwSize:DWORD
local lpData:LPVOID

    invoke CreateFile, lpszCertFile, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0
    .if eax != -1
        mov hFile, eax
        invoke GetFileSize, eax, 0
        mov dwSize, eax
        invoke LocalAlloc, LPTR, eax
        .if eax != 0
            mov lpData, eax
            invoke ReadFile, hFile, lpData, dwSize, addr dwSize, 0
            .if eax == TRUE
                invoke CertOpenSystemStore, 0, CTXT("Root")
                invoke CertAddEncodedCertificateToStore, eax, X509_ASN_ENCODING + PKCS_7_ASN_ENCODING, lpData, dwSize, CERT_STORE_ADD_NEW, NULL
            .endif
            invoke LocalFree, lpData
        .endif
        invoke CloseHandle, hFile
    .endif
    
    ret
ImportCertificate endp

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

Итак, если при соединении с защищённым вэбсайтом браузер сообщает об ошибке сертификата безопасности веб-узла, как убрать предупреждение для многократно проверенного сервера?

Причины предупреждения

1. Сертификат вебузла не является доверенным, если предоставлена неполная цепочка промежуточных сертификатов, может возникать данное уведомление об ошибке. Вероятно, имеется попытка извлечь информацию пользователя.

2. Сертификат безопасности был произведен для вебузла с другим адресом.

Ошибка сертификата безопасности веб узла как убрать

3. Неточное время на компьютере клиентаболее позднее, чем предусмотрено сроком действия сертификата «ССЛ» сервера. Стандартная рекомендацияпрекратить работу с вебузлом, закрыв страницу. Или же, как вариант, возможно обнуление таймера: вручную или переустановкой батарейки платы.

4. Если ошибка повторяется при соединении со многими сайтами, возможно наличие системных или сетевых неполадок. Виновником внедрения недостоверных сертификатов может оказаться антивирус, или же вредоносное ПО, подменяющее настоящие сертификаты.

5. Ресурс действительно небезопасен. Если вы желаете проигнорировать «тревогу«, нужно внести сайт в исключения. Но до того, как убрать ошибку сертификата безопасности веб-узла таким способом, не мешает дополнительно проверить причину возникновения проблемы.

Если ошибка проявляется изредка, необходимо скачать сертификат безопасности из официального источника, установить его и перезагрузить компьютер.

Windows VISTA

Как убрать ошибку сертификата безопасности веб-узла для Windows VISTA:

1. Внесите сертификат в доверенные (не рекомендуется). Затем следует подтвердить дальнейшее открытие окна, и в появившемся «Ошибка сертификата…» вызвать окно недостоверного сертификата, обозначенное «щитом«.

2. Выбрать «Просмотр сертификата«, затем «Общие«, где возможно отследить время действия сертификата вэбузла.

3. В мастере установки выберите «Установить сертификат» и «Вперёд».

4. Отметьте галочкой «Автоматически выбранное хранилище сертификата…», подтверждая нажатием «Вперёд».

5. Выполните подтверждение операции, нажав «ДА» и «Финиш» в окне запроса. Избранный сертификат установлен.

6. Произведенные изменения подтвердите нажатием «ОК».

7. Выберите строку «Поместить все сертификаты в следующее хранилище«, выполните подтверждение нажатием «Обзор«.

8. В окне под названием «Выбор хранилища сертификатов«, отметьте «Доверенные корневые центры сертификации«, подтверждая нажатием «ОК».

9. Завершите процедуру: «Далее«, «Готово«, подтвердите установку, нажимая «ОК», и презапустите браузер.

Как убрать ошибку сертификата безопасности веб узла

Windows ХР

Как убрать ошибку сертификата безопасности веб-узла для Windows ХР:

1. В «хранилище сертификатов» выберите хранилище согласно типу сертификата «автоматически«.

2. При нажатии «Далее» импортируется и установится сертификат.

3. Щёлкните «Готово«.

4. Если предварительно появляется «Предупреждение безопасности, нажмите «ДА» в качестве подтверждения установки.

5. Поступит уведомление об установке. Щёлкните «ОК». Процедура завершена.

Антивирусные продукты

Как исправить ошибку сертификата безопасности веб-узла посредством настроек антивирусного обеспечения?

В антивирусе присутствует опция сканирования шифрованных соединений, и с переустановкой антивируса сертификаты в хранилище доверенных браузера будут установлены повторно.

В настройках программы Аваст:

  • перейдите по цепочке «Настройки» — «Активная защита«, затем «Настроить» (возле щитка);
  • уберите галочку с настроек, выберите включение http-сканирования, подтвердитеОК»).

Как исправить ошибку сертификата безопасности веб узла

Как убрать ошибку сертификата безопасности веб-узла посредством прграммы «Касперский»:

  • щёлкните в настройках программы: «Настройки» — «Дополнительные» — «Сеть«;
  • в «сканировании защищённых соединений» выберите: «Не сканировать зашифрованные соединения«;
  • в качестве альтернативного действия можно отметить «Дополнительные настройки» и выбрать «Установить сертификат«;
  • затем подтвердите изменения и перезапустите компьютер.

Если повторяется «ошибка сертификата«, вероятно, он скомпрометирован, и не стоит добавлять в исключения сертификат популярного вебсайта.

Вредоносные программы

Используйте ПО последней версии, включая плагины, так как установка вредоносного ПО возможна изза уязвимости устаревших программ.

Устанавливая программы в мастерах ПО принимайте их с официального сайта, снимайте флажки с установки непроверенных программ.

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

Контролируйте работу антивируса в реальном времени.

Понравилась статья? Поделить с друзьями:
  • Ошибка 120408 бмв f20
  • Ошибка 120408 bmw n13b16
  • Ошибка 1204 ниссан
  • Ошибка 1204 мерседес м272
  • Ошибка 12031 при установке