Проверка Guardant ключа в программе (Delphi, MS SQL)

Discussion in 'Реверсинг' started by SadITGuy, 3 May 2021.

  1. SadITGuy

    SadITGuy New Member

    Joined:
    3 May 2021
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Приветствую, форумчане,

    есть древняя программа, 2014ого года, для гаража, написанная на Delphi 7, использующая MS SQL 2014.
    Программа тупо не запускается, в логе пишет, что нет аппаратного ключа. софт использует guardant, которого физически у меня нет.
    Попытался разобрать программу в IDR, но дальше того, как нашел IDR не вылетающий на Вин7, знаний не хватило, а великие гугл с яндексом разводят руки. Порадовало, что разработчи не упаковали свое детище.
    Подскажите, в какую сторону копать? Как промониторить, что проверяет наличие ключа - приложение или запись в базе данных? как удалить с delphi приложения проверку аппаратного ключа?

    Перерыл всю документацию по guardant api, но кажется создатели ключа защиты, не очень долюбливали delphi, информации очень мало.

    Компания-разработчик закрылась больше трех лет назад.

    Прошу не кидатся тапками, в делфи я больше нуб, чем во всем остальном..
     
  2. #colorblind

    #colorblind Moderator

    Joined:
    31 Jan 2014
    Messages:
    634
    Likes Received:
    246
    Reputations:
    42
    Если не ошибаюсь, ключ частично содержит в себе логику программы, поэтому без него не получится снять конверт. Исходя из "дальше того, как нашел IDR не вылетающий на Вин7, знаний не хватило", я делаю однозначный вывод, что самостоятельно вы не справитесь в принципе.

    p.s.: А вообще успех любой навесной защиты связан с правильностью ее применения. Возможно вам поможет патч в 2 байта, а возможно нужно будет пилить эмулятор, но мы этого никогда не узнаем, ибо ключа у вас все-равно нет))
     
  3. mankurt13

    mankurt13 Well-Known Member

    Joined:
    18 Oct 2019
    Messages:
    378
    Likes Received:
    1,532
    Reputations:
    3
    У гардантов как и везде все по-разному. Самый привлекательный в плане защиты guardant code, в который таки можно передавать зашифрованный код, который может кушать некоторые данные на входе и возвращать данные на выходе. Когда мы рассматривали переход на гардант коде решающим фактором оказалась невозможность хранить промежуточные данные в оперативке донгла. Такая шляпа прекрасно эмулируется табличным способом, противопоставить этому можно только огромные размеры и многообразие данных на входе и выходе и пойди-ка придумай еще как такое вкрутить в реальную задачу. Остальные гарданты это хранилища ключей шифрования. Вердикт - оставить программу в покое, без доступа к донглу пытаться что-либо придумывать - авантюра.
     
    #colorblind likes this.