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

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

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

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

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

Проблема Кирилические адреса из зоны рф

swyatogor

Green Team
24.02.2014
593
24
BIT
0
Добрый день..
Ни кто не сталкивался с адресацией почты на кирилические адреса из зоны рф?
я что то не догоняю или где-то что-то недонастрено у мну( пишет не могу отправить так как домен не найден.. ..
а как он его найдет если пытается его вот в таком виде найти?
Router: Message 002190D3 NOT transferred via SMTP to ***** for =?KOI8-R?B?aW5mb0DNydIty9LB08/LMzMu0sY=?= <info@0xL5ECE8F0z-0xL5EAF0E0F1EEEAz33.0xL5F0F4z> from **** 450 4.1.2 <info@0xL5ECE8F0z-0xL5EAF0E0F1EEEAz33.0xL5F0F4z>: Recipient address rejected: Domain not found

как то это можно исправить?

ps адрес для теста - info@мир-красок33.рф
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
Добрый день..
Ни кто не сталкивался с адресацией почты на кирилические адреса из зоны рф?
я что то не догоняю или где-то что-то недонастрено у мну( пишет не могу отправить так как домен не найден.. ..
а как он его найдет если пытается его вот в таком виде найти?
Router: Message 002190D3 NOT transferred via SMTP to ***** for =?KOI8-R?B?aW5mb0DNydIty9LB08/LMzMu0sY=?= <info@0xL5ECE8F0z-0xL5EAF0E0F1EEEAz33.0xL5F0F4z> from **** 450 4.1.2 <info@0xL5ECE8F0z-0xL5EAF0E0F1EEEAz33.0xL5F0F4z>: Recipient address rejected: Domain not found

как то это можно исправить?

ps адрес для теста - info@мир-красок33.рф
домина не умеет
как это разруливать - хз, неизвестно на какой стадии домина превращает адрес в 7/8бит кодировку, но, разумеется, ДНС такое распознать не сможет
ответ вендора
и еще
другого я не встречал ;)
нужна поддержка вот этого
Support for Email Address Internationalization (EAI) as defined in RFC 6531..6533. This supports UTF-8 in SMTP/LMTP sender addresses, recipient addresses, and message header values. The implementation is based on initial work by Arnt Gulbrandsen that was funded by CNNIC.
 
Последнее редактирование:
  • Нравится
Реакции: swyatogor

Мыш

Lotus Team
12.02.2008
1 213
29
BIT
43
*В теории* решается через ж... через традиционный русско-индусский интерфейс.
Серверным правилом письма, получатели которых содержат, например, "рф", перемещаются в отдельную базу.
В ней java-агентом русские получатели перекодируются в punycode (см. класс java.net.IDN) и письмо копируется назад в mail.box.
 
Последнее редактирование:

Мыш

Lotus Team
12.02.2008
1 213
29
BIT
43
Итак, концепция скрипта (код ОЧЕНЬ грязный - в лоб не юзать!):
Java:
import lotus.domino.*;
import java.util.Base64;
import java.util.Vector;
import java.net.IDN;
public class JavaAgent extends AgentBase {

    public void NotesMain() {
      try {
          Session session = getSession();
          AgentContext agentContext = session.getAgentContext();
          Database db = session.getCurrentDatabase();
          Database mailbox = session.getDatabase("Server/Org", "mail.box");
          View view = db.getView("(All)");
          Document doc = view.getFirstDocument();
          while (doc != null)
              {
            // Для примера создаем (и затем сохраняем) преобразованный док-т в текущей базе;
            // на практике - в mail.box  
            Document newdoc = db.createDocument();
              doc.copyAllItems(newdoc, true);
            Vector values = doc.getItemValue("Recipients");
            Vector new_values = new Vector();
            for (int i = 0; i < values.size(); i++)
                {
                // Для Recipients извлекаем только сам адрес,
                // отделяем домен, кодируем его в Punycode.
                Vector email = session.evaluate("@Name([ADDRESS821]; \"" + values.elementAt(i).toString() + "\")");
                String[] parts = email.elementAt(0).toString().split("@");
                new_values.add(parts[0] + "@" + IDN.toASCII(parts[1]));
                }
            newdoc.replaceItemValue("Recipients", new_values);
            values = doc.getItemValue("SendTo");
            new_values.clear();
            for (int i = 0; i < values.size(); i++)
                {
                // Для SendTo, CopyTo, BlindCopyTo сначала тоже извлекаем сам адрес,
                // отделяем домен, кодируем его в Punycode.
                Vector old_email = session.evaluate("@Name([ADDRESS821]; \"" + values.elementAt(i).toString() + "\")");
                String[] parts = old_email.elementAt(0).toString().split("@");
                String new_email = parts[0] + "@" + IDN.toASCII(parts[1]);
                // Все текущее значение SendTo оборачиваем в кавычки - это будет "человеческое" имя в адресе
                String new_value = "\"" + values.elementAt(i).toString() + "\"";
                // "Человеческое" имя кодируем в utf-8.
                // Если этого не делать, то Domino, обнаружив в имени адрес с кириллическим доменом,
                // его изгадит, преобразовав в шестнадцатиричный "мусор".
                new_value = "=?utf-8?B?" + Base64.getEncoder().encodeToString(new_value.getBytes("utf-8")) + "?=";
                // Добавляем ранее сконвертированный адрес в угловых скобках.
                new_value = new_value + " <"+ new_email +">";
                new_values.add(new_value);
                }
            newdoc.replaceItemValue("SendTo", new_values);
            newdoc.save(true);
            doc = view.getNextDocument(doc);
              }
       } catch(Exception e) {
          e.printStackTrace();
       }
   }
}
 

swyatogor

Green Team
24.02.2014
593
24
BIT
0
Серверным правилом письма, получатели которых содержат, например, "рф", перемещаются в отдельную базу.
В ней java-агентом русские получатели перекодируются в punycode (см. класс java.net.IDN) и письмо копируется назад в mail.box
Про такой "ход конем" что то не подумал.. спасибо)
 

swyatogor

Green Team
24.02.2014
593
24
BIT
0
блин.. вот трабла то.. скрипт работает.. но столкнулся с еще одной бядой..
адреса у некоторых получатетей имеют вид - инфо@почта.рф.. а не info@...
запарился какую ему кодировку пихать)
 

swyatogor

Green Team
24.02.2014
593
24
BIT
0
тьфу гадость.. оказывается просто также в punycode нужно пихать.. оказывается просто тот адрес на котором я тренировался не валидный((
 
Мы в соцсетях:

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