copy_from_user(ips[i], buffer,256); printk(KERN_INFO "ips: %s \n", ips[i]); i++; if(strncmp(ips[0],"wh",2)==0){
почему он работает,
как его можно переписать, чтобы было удобнее читать?
RSP: 0x00007FFFFFFFEA78
) указывает примерно в то же место, где находится код программы (0x7fffffffea75: push rbx
). Код обычно защищён от записи, соответственно записать в стек может быть нельзя по этой причине. Кроме того, если записать в стек таки можно, push rbx как раз перепишет саму себя и следующую инструкцию. Без отладчика это может работать за счёт конвейера, но под отладчиком это работать не будет. Я нашёл .deb пакет интересующего меня 4.18.0-15-generic, но исходники не как не могу найти.
apt-get source <имя пакета>
.Прошу помочь с оптимизацией данного скрипта.
#!/bin/bash
fille="$1"
cmd=
while read -r line; do
source=$(echo "$line" | awk 'BEGIN { FS = "," } { print $1} ');
target=$(echo "$line" | awk 'BEGIN { FS = "," } { print $2} ');
cmd="${cmd}s,$source,$target,g;"
done < "$file"
git filter-branch -f --msg-filter "sed -e '$cmd'"
Как запретить VSC отлаживать такие вещи?
include 'linInclude/proc64.inc'
format ELF64 executable 3
include '/usr/share/fasm/examples/elfexe/dynamic/import64.inc'
interpreter '/lib64/ld-linux-x86-64.so.2'
needed 'libc.so.6'
import exit, printf
segment readable executable
entry $
lea rdi, [fmtS]
lea rsi, [msg]
call [printf]
call [exit]
segment readable writeable
msg db 'Hello, World!', 0xA, 0
fmtS db '%s', 0xA, 0
gpg --list-keys
pub 4096R/353AE8AA 2020-07-13
gpg --list-secret-keys
при попытке подписать rpm его не видит. Какие возможные причины?
gpg: signing failed: No secret key
программу для изменения маршрута пакета в спутниковом сегменте
планирую всё переписать на Си, сделать модуль ядра
Нужно в идеале кэш и отправку некоторых данных, как я понимаю это всё придётся писать в нуля в ядре
В процессе выполнения программы удаляю файл и вижу, что fwrite продолжает возвращать количество записанных байт, при этом файла нет, и он не пересоздается.
/proc/<pid>/fd
твоего процесса. *(unsigned int*)&hookProc[6] = function; // Заменить 4 байта нужным адресом.
memcpy(hookProc + 6, &function, sizeof(function))
.(void*)(address & 0x0xFFFFF000), sizeof(hookProc)
(void*)(address & 0xFFFFF000), ((address + sizeof(hookProc) + 0xfff) & 0xfffff000) - (address & 0xfffff000)
.видно, что не изменилась инструкция перехода со сменой режима.