herm1t LIVE!ng room - Post a comment [entries|archive|friends|userinfo]
herm1t

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

Пилим сук, на котором сидим Jul. 20th, 2011|10:23 am

herm1t
Захотелось странного - записать, что-нибудь в исполняемый файл, который в данный момент запущен. Просто так - нельзя, open вернет ETXTBSY. Сделал так - нашел таблицу сегментов, выделил mmap()'ом память, скопировал туда код - munmap(seg1)-munmap(seg2)-open(argv[0], O_RDWR)-lseek(h,0,2)-write(h,...)-exit(). Работает. После отмапливания всех сегментов файл освобождается и доступен для записи.

P.S. SPTH got me to do an english translation of this blog, so you could find the code for this entry there - herm1t.vxer.org.

Link Read Comments

Reply:
From:
(will be screened)
Identity URL: 
имя пользователя:    
Вы должны предварительно войти в LiveJournal.com
 
E-mail для ответов: 
Вы сможете оставлять комментарии, даже если не введете e-mail.
Но вы не сможете получать уведомления об ответах на ваши комментарии!
Внимание: на указанный адрес будет выслано подтверждение.
Username:
Password:
Subject:
No HTML allowed in subject
Message:



Notice! This user has turned on the option that logs IP addresses of anonymous posters.