• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Интернет сертификаты в домино

  • Автор темы XiNoID
  • Дата начала
X

XiNoID

В общем потребовалось настроить схему авторизации без ввода пароля.
Сделал сертификатор, создал базку certreq, настроил CA...
Проверил в ФФ... Сделал зверька в адресной книге, запросил сертификат, создал пару, принял запрос, одобрил, получил.... Через фф - всё работает.
Решил проверить через хром, не работает: _ttps://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/776/38/
Решил проверить через IE11 - тоже не работает, получаю ответ при создании запроса:
"Error: No public key supplied. Operation cancelled"
И всё.
В ie7 всё работает.
В опере тоже всё хорошо.

А если же мы добавляем сертификаты через админку в person документы, то там завязано на ID, и соответственно при экспорте мы не получаем private key...

В общем... Что надо, чтобы в ие11 заработало?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
В общем потребовалось настроить схему авторизации без ввода пароля.
а может не надо ;)
теоретически можно эпрувить ключи на фронте, но останется вопрос проброса авторизации, а вот здесь схемы не так очевидны
можно заморочится подъемом до TLS на домине - тоже тернистый путь с сертификатами будет ;)
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
можно юзера подсовывать по некоему своему закону (например по таблице на фронте)
во фронт прописываем
proxy_set_header $WSRU dominouser;
dominouser генерим из таблицы - вот тут нужно немного изголяться
а можно https://codeby.net/threads/56888/#post-258105
сделать запрос с домины
 
Последнее редактирование модератором:

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
подборка на тему
там и
через lua
 
X

XiNoID

а может не надо ;)
теоретически можно эпрувить ключи на фронте, но останется вопрос проброса авторизации, а вот здесь схемы не так очевидны
можно заморочится подъемом до TLS на домине - тоже тернистый путь с сертификатами будет ;)

Надо. Очень. Задача стоит не столько в обеспечении безопасности, сколько в избавлении от ввода пароля.
Версия у меня 9.0.1 с третьим фикспаком. Информация, что я вижу в FF:
link removed

То есть тлс присутствует.

Ссылки все посмотрю, спасибо...
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
вот еще
особливо интересен будет $ssl_client_s_dn;
кот можно упихать в $WSRU только учесть вид, кот принимает нотусня
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
цепочка следующая - генерим (получаем) серверный сертификат, из кот получим файлы:
certificate = ./ca.crt # Файл сертификата CA
private_key = ./ca.key # Файл закрытого ключа CA
они используются сервером, но ониже и пользуются при генерации клиентских сертификатов
по ссылке
Bash:
openssl req -new -newkey rsa:1024 -nodes -keyout client01.key -subj /C=RU/ST=Moscow/L=Moscow/O=Companyname/OU=User/CN=etc/emailAddress=support@site.com -out client01.csr
где -subj ... это то что надо будет подставлять домине в $WSRU и что мы получим в $ssl_client_s_dn;
следуя описанию
куда нагенеряться сертификаты клиентов - решаем сами :)
но их надо преобразовать к p12:
Bash:
openssl pkcs12 -export -in client01.crt -inkey client01.key -certfile ca.crt -out client01.p12 -passout pass:q1w2e3
уж шобы совсем облениться
Bash:
#!/bin/sh
 while read line
do
echo $line
done <users.txt
юзаем конструкцию, для кот. получаем файло из АК (с именами юзеров), например - поле shortname, кот. может использоваться для авторизации (д.б. доступно дефолтно, в домине)вместо эха, разумеется - ставим скрипты выше
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
как не тестированный пример
Bash:
#!/bin/sh
while read line
do
  echo $line
  openssl req -new -newkey rsa:1024 -nodes -keyout $line.key -subj $line -out $line.csr
  openssl ca -config ca.config -in $line.csr -out $line.crt -batch
  openssl pkcs12 -export -in $line.crt -inkey $line.key -certfile ca.crt -out $line.p12 -passout pass:q1w2e3
done <users.txt
[DOUBLEPOST=1437141864,1437141785][/DOUBLEPOST]пароль, можно брать из файла же, если туды его положить каждому юзеру свой
[DOUBLEPOST=1437141982][/DOUBLEPOST]по типу
 
X

XiNoID

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


Почитал и подумал...
с openssl знаком по openvpn.
Хммммм... я правильно понимаю, что....просто генерим сертификаты на стороне, а потом раздаем пользователям? Используя существующий механизм в домино?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
а потом раздаем пользователям?
раздаем файлы
генерим по самоподписанному сертификату либо по полученному (для сервера/сайта).
если "на стороне" - про openssl, то - да, но в любых никсах он, практически, штатно установлен

сложности в домине - отыскать правильный путь чтобы современные браузеры не посылали

механизм с домино завязан на УЁ (получения клиентского сертификата), да еще, возможно хранит клиентские сертификаты хзгде/хзкак
метод, описанный выше, позволяет вовсе не заморачиваться на скорость реакции ИБМ по внедрению заплаток и прочих свистоперделок - но действовать сообразно времени
благо в ОСС мире заплатки выходят оперативно ;)

Т.о. для домины надо формировать правильный ключ шифрования ( ), затем как-то подписывать клиентские сертификаты..., уверен - способ есть, но он далеко не проще использования nginx + openssl
 
Последнее редактирование модератором:

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
кстати по ссылке же - указан 2-ой путь, через... - фронт (но от ИБМ) ;) и только для винды
[DOUBLEPOST=1437214624,1437214459][/DOUBLEPOST]обойти ввод пароля, но опять же - виндятко + УЁ, можно и используя настройку аутентификации в АД, что ИМХО - ну очень кастыльно
 
X

XiNoID

кстати по ссылке же - указан 2-ой путь, через... - фронт (но от ИБМ) ;) и только для винды
[DOUBLEPOST=1437214624,1437214459][/DOUBLEPOST]обойти ввод пароля, но опять же - виндятко + УЁ, можно и используя настройку аутентификации в АД, что ИМХО - ну очень кастыльно
Спасибо! А не могли бы вы рассказать про второй способ? Что за УЁ?
Сейчас вылезла подробность, что сертификаты надо раздавать как можно более простым способом, т.к. пользователей много и частая ротация...
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
178
можно более простым способом
ну сложного ничего нет ;)






хотя у нас, индусы, скрипт лепили и инструкцию, кот. только больше запутывала, правда - к нотусятине сертификат отношения не имел - встраивали в УЁ, для подписи в аутглюке (аутлук)
 
Последнее редактирование модератором:
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!