Inject кода в intaller

Discussion in 'Реверсинг' started by atmel, 26 Aug 2014.

  1. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,937
    Likes Received:
    805
    Reputations:
    224
    Я бы может и показал, но для этого мне надо знать, что именно вы с файлом делаете. Если просто несколько байтов дописать в конец приведенного выше инсталятора и поправить проверку целостности, то вроде ничего не меняется в работе
     
  2. #colorblind

    #colorblind Elder - Старейшина

    Joined:
    31 Jan 2014
    Messages:
    566
    Likes Received:
    192
    Reputations:
    35
    Проверка целостности уже исправлена, я писал выше.
    Когда тренировался с инсталлером, то просто добавил пару секций, одну с импортом, другую с данными. Это не важно. Суть то в том, чтобы заставить инсталлер обрабатывать только свой оверлей, а в коде что-то вроде while not EOF, т.е. считывает до конца файла и из-за этого проблемы с распаковкой
     
  3. atmel

    atmel New Member

    Joined:
    14 Aug 2010
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    Я ему в CFF Explorer делаю "Import added" и аттачу свою DLL
    Мне надо много места, так как тяну много данных (около 50кб) с собой (это без кода).
     
  4. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,937
    Likes Received:
    805
    Reputations:
    224
    Ок, добавил ты секций. Оверлей это то, что находится за последней секцией исполняемого файла. Какие могут быть проблемы с распаковкой, если оверлей сместится в итоге?
     
  5. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,937
    Likes Received:
    805
    Reputations:
    224
    CFF Explorer отрезает оверлей, по крайней мере при добавлении импорта. Проверь размер результирующего файла, если он маленький, то попробуй добавить оригинальный оверлей к нему.
     
  6. #colorblind

    #colorblind Elder - Старейшина

    Joined:
    31 Jan 2014
    Messages:
    566
    Likes Received:
    192
    Reputations:
    35
    atmel, да уж, 50кб в кейвы точно не запихаешь :D

    Kaimi, проблема в том, что физически секции находятся после оверлея, а если откреплять оверлей, прикручивать свои секции и снова подцеплять, то придется переписывать адреса при работе с оверлеем. И как ТС сказал, ему требуется решение претендующее на универсальность, т.к. он работает с несколькими инсталляторами.
     
    #26 #colorblind, 27 Aug 2014
    Last edited: 27 Aug 2014
  7. atmel

    atmel New Member

    Joined:
    14 Aug 2010
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    с моей dll инсталлер всего на 800 байт больше оказался.
     
  8. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,937
    Likes Received:
    805
    Reputations:
    224
    Так я предлагал искать, где именно захардкодены оффсеты и менять их. Но если инсталлер сам определяет начало оверлея в файле, то этой проблемы быть не должно
     
Loading...