ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > Реверсинг
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

.net, RSA, и серийный номер.
  #1  
Старый 21.03.2010, 16:59
Аватар для lis84
lis84
Познающий
Регистрация: 28.04.2009
Сообщений: 61
Провел на форуме:
103259

Репутация: 37
По умолчанию .net, RSA, и серийный номер.

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

Попалась мне программка, которую хотелось бы использовать, да жадная она, аж 30 баксов просит. Взялся я её ковырять, и наковырял такое.

собсно проверка ключа идёт тут:

Цитата:
byte[] buffer2 = Convert.FromBase64String(A_1);
RSACryptoServiceProvider provider2 = new RSACryptoServiceProvider();
provider2.FromXmlString(A_2);
return provider2.VerifyData(Encoding.Unicode.GetBytes(A_3 ), new SHA1CryptoServiceProvider(), buffer2);

При этом известны все параметры. А именно:
A_3 это xml структура, которую я могу повторить
buffer2==A_1=введённый серийный ключ
A_2 это строка == "<RSAKeyValue><Modulus>rCYsaw7Hof5LnwESHsGclpSfinn +lGkQ3gzxsG6zZTpsqV0mjmcLj12ny+zCfqu78LnwVvPR3TEig BXZHjwnZ9hji+4TSm/2IW+Ic8wTJcaAw2D6AnlQhcILszNd1p1Fxa1Mu1FyOgzWCqYtl WtkRaH0A3nMRDMrnUWahsDFZEU=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>";


Вооот, подскажите, можно как то сгенерить true серийный ключ? А то я уже всю голову сломал, и яшку замучал, не могу адекватного описания найти к этим функциям.
Понял что VerifyData проверяет цифровую подпись, где A_3 собсно данные, а buffer2 (серийный ключ) это их подпись.

Но не смог понять, могу ли я сгенерить true подпись и как, вроде все данные в руках есть!
 
Ответить с цитированием

  #2  
Старый 21.03.2010, 19:30
Аватар для gold-goblin
gold-goblin
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме:
5265510

Репутация: 455


По умолчанию

удали функцию проверки пасса и приравняй ее к единице. Все пасс равен одному =)
Или выложи всю прогу (в раздел реверсинг)
 
Ответить с цитированием

  #3  
Старый 21.03.2010, 19:41
Аватар для lis84
lis84
Познающий
Регистрация: 28.04.2009
Сообщений: 61
Провел на форуме:
103259

Репутация: 37
По умолчанию

Ну господа, пропатчить это не солидно, хотелось бы кейген.

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

ПыСы прога тут.
http://webbug.s3.amazonaws.com/webbugpro.exe
 
Ответить с цитированием

  #4  
Старый 21.03.2010, 21:27
Аватар для Kaimi
Kaimi
Reservists Of Antichat - Level 6
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме:
18127311

Репутация: 1676


Отправить сообщение для Kaimi с помощью ICQ
По умолчанию

Подозреваю что проверка идет с помощью открытого ключа, с помощью которого не сгенерить правильный серийник.
Пропатчи VerifyData в mscorlib )
 
Ответить с цитированием

  #5  
Старый 22.03.2010, 00:59
Аватар для neprovad
neprovad
Постоянный
Регистрация: 19.10.2007
Сообщений: 794
Провел на форуме:
1013791

Репутация: 711


По умолчанию

Навскидку виден модуль и экспонента rsa, так что можно озадачиться факторизацией, ну если делать нечего в ближайшее время.
Говоря иначе, то же самое время можно потратить на написание аналогичной программы

Последний раз редактировалось neprovad; 22.03.2010 в 01:02..
 
Ответить с цитированием

  #6  
Старый 22.03.2010, 04:12
Аватар для lis84
lis84
Познающий
Регистрация: 28.04.2009
Сообщений: 61
Провел на форуме:
103259

Репутация: 37
По умолчанию

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

я немного не понимаю, на чём основанно это ограничение, можете кто нить пояснить.

ПыСы, да не предлагайте мне что то патчить, я в первые 10 минут патч сделал, тут концептуальный вопрос, неужели вот так легко можно сделать убер серийник (не ломающийся)
 
Ответить с цитированием

  #7  
Старый 22.03.2010, 04:15
Аватар для lis84
lis84
Познающий
Регистрация: 28.04.2009
Сообщений: 61
Провел на форуме:
103259

Репутация: 37
По умолчанию

Цитата:
Сообщение от neprovad  
Навскидку виден модуль и экспонента rsa, так что можно озадачиться факторизацией, ну если делать нечего в ближайшее время.
Говоря иначе, то же самое время можно потратить на написание аналогичной программы
Видно что:
1. Беруться исходные данные (имя юзера, емаил, и айдишники оборудования
2. Берётся введённый ключ.
3. это всё суётся в функцию verifyData, и она выдаёт результат, истина или ложь.

Воот, теперь кто нибудь пояснит почему невозможно узнать какой должен быть true ключ?

ПыСы, принцип работы RSA понимаю, и что такое ассиметричные алгоритмы. Принцип работы ЭЦП не понимал никогда (что именно помешает мне подделать подпись), сколько не читал. Интернет описания ЭЦП то ли какой то факт пропускают, отсутствие которого мешает понять, то ли люди которые пишут, слишком умные.

Последний раз редактировалось lis84; 22.03.2010 в 04:18..
 
Ответить с цитированием

  #8  
Старый 22.03.2010, 19:00
Аватар для neprovad
neprovad
Постоянный
Регистрация: 19.10.2007
Сообщений: 794
Провел на форуме:
1013791

Репутация: 711


По умолчанию

Это понятно что интерес чисто академический, но на практике сложно реализовать, судя по тому что я понял ключ 1024 битный (если не прав - поправьте) На кряклабе успешно факторизовали совместными усилиями более "мелкий" ключ, а такой мне думается не поддастся натиску. Не стоит заморачиваться, можно или публичную часть ключа заменить своей или просто запатчить проверку. Ну а про это варианты уже был разговор..
 
Ответить с цитированием

  #9  
Старый 23.03.2010, 14:30
Аватар для zeppe1in
zeppe1in
Постоянный
Регистрация: 12.07.2006
Сообщений: 327
Провел на форуме:
1654818

Репутация: 117
По умолчанию

lis84
Подпись это хэш от данных зашифрованный закрытым ключом. ты вводиш данные и подпись, подпись расшифровывается(открытым ключом) и сверяется с хешем от данных, вот тебе и проверка подписи. Без закрытого ключа подпись не сделаешь, а ключ как уже сказал neprovad 1024 битный, так что кейген на сегодняшний день не вариант)
 
Ответить с цитированием

  #10  
Старый 24.03.2010, 04:49
Аватар для lis84
lis84
Познающий
Регистрация: 28.04.2009
Сообщений: 61
Провел на форуме:
103259

Репутация: 37
По умолчанию

Ааа, то есть закрытый ключ в принципе нигде в программе не фигурирует (, а до кучи такой способ позволяет сделать невзламываемые серийники (

Запишу себе в копилку программиста.

ПыСы. Помнил что в RSA открытым ключом данные шифруются (расшифровываются только закрытым), не знал что можно расшифровать.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Телефонные шалости: хакерский подход к IP-телефонии [Dead]Demon Статьи 0 22.11.2009 16:03
FAQ. Перед тем как задать вопрос. Fata1ex ICQ 1 04.11.2007 20:35



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ