aschensekt
Просто выебываться, кто проверит то
『𝔻𝕠𝕟
Просто выебываться, кто проверит то
А потом натыкаешься на какого-нить Досха, а он такой: "анпакни dnguard"
『𝔻𝕠𝕟
А ты такой
『𝔻𝕠𝕟
Semyon
Отсылка типо: у меня лапки?
『𝔻𝕠𝕟
aschensekt
Alexey
aschensekt
А в купе с фразой про асм можно и разорвать всем все на свете
aschensekt
aschensekt
Он такой один
aschensekt
А выебываться всем можно
КТ315
Какой же бред...
fd
в фсб там наверное криптография нужна,а не реверс
Chapmann
ссылка мертвая
Новая ссылка в описании, по старой какой-то импотент начал ботов закидывать.
Ого, бот каптчу решил...
КТ315
aschensekt
Я усомнился прям, что я человек
Semyon
Филипп
Добрый день!
Взялся я за FASM.
Написать процедуру, которая печатает строку мне удалось.
А вот считать её — нет.
Вроде бы, всё правильно, вроде бы, я правильно оформил системный вызов read.
Не работает!
Филипп
Как правильно вызвать этот вызов?
Aiwan \ (•◡•) / _bot
больше контекста, больше подробностей, больше кода. ещё больше. почти ничего не понятно
Филипп
Смотрите, я вызываю системный вызов read, а программа ведёт себя так, как будто я ничего не вызываю.
aschensekt
А код можно?
Alexey
Филипп
Смотрите, я печатаю на маленьком нетбуке.
Когда я напечатал такой код:
; Считываем строку из консоли
mov eax, 3 ; Системный вызов read (sys_read)
mov ebx, 0 ; Дескриптор файла stdin
mov ecx, input_buf ; Адрес буфера для ввода
mov edx, 255 ; Максимальная длина ввода
int 0x80 ; Вызов ядра
Филипп
Всё запустилось.
Alexey
Филипп
Куда пропадает код?
Филипп
;; input: eax - buffer address
;; ebx - buffer size
;; output eax - string len
;;
read_string:
push ebx
push ecx
push edx
mov edx, ebx ; Кладём длину в регистр
mov ecx, eax ; Кладём адрес в регистр
mov eax, 3 ; Номер вызова
mov ebx, 0 ; Номер потока
int 0x80
pop edx
pop ecx
pop ebx
ret
Филипп
Вот моя процедура.
Semyon
Alexey
Филипп
format ELF executable 3
entry _start
msg db 'Привет!', 0x0A, 0
buf db 1024 dup(0)
_start:
mov eax, msg
call print_string
mov eax, 3
mov ebx, 0
mov ecx, buf
mov edx, 1023
int 0x80
;; mov eax, buf
;; call read_string
mov eax, buf
call print_string
jmp .end
.end:
mov eax, 1 ; sys_exit
xor ebx, ebx ; return 0
int 0x80
Филипп
Вот такое работает.
Alexey
format ELF executable 3
entry _start
msg db 'Привет!', 0x0A, 0
buf db 1024 dup(0)
_start:
mov eax, msg
call print_string
mov eax, 3
mov ebx, 0
mov ecx, buf
mov edx, 1023
int 0x80
;; mov eax, buf
;; call read_string
mov eax, buf
call print_string
jmp .end
.end:
mov eax, 1 ; sys_exit
xor ebx, ebx ; return 0
int 0x80
Есть специальный сискол на линуксе, зачем тебе функция?
Филипп
Я в этой функции вызываю его.
Филипп
Я понял в чём дело!
Я забыл передать длину буфера при вызове. А ebx у меня нулевой.
Alexey
format ELF executable 3
entry _start
msg db 'Привет!', 0x0A, 0
buf db 1024 dup(0)
_start:
mov eax, msg
call print_string
mov eax, 3
mov ebx, 0
mov ecx, buf
mov edx, 1023
int 0x80
;; mov eax, buf
;; call read_string
mov eax, buf
call print_string
jmp .end
.end:
mov eax, 1 ; sys_exit
xor ebx, ebx ; return 0
int 0x80
А это не длина?
Alexey
Филипп
format ELF executable 3
entry _start
msg db 'Привет!', 0x0A, 0
buf db 1024 dup(0)
_start:
mov eax, msg
call print_string
mov eax, buf
mov ebx, 1023
call read_string
mov eax, buf
call print_string
jmp .end
.end:
mov eax, 1 ; sys_exit
xor ebx, ebx ; return 0
int 0x80
Филипп
Вот теперь заработало!
Филипп
Чем вам так не понравился мой код?
Semyon
Alexey
Филипп
ЧатГПТ написал только первый кусочек. Я привёл его как пример, так как не настроил ещё общий буфер обмена с маленьким ноутбуком.
Филипп
Скажите пожалуйста, а как отлаживать код на FASM? Работать с int3 и gdb мне не очень понравилось
Semyon
Филипп
Господа, остальной код я написал сам!
The Bird of Hermes
Alexey
Alexey
Филипп
Спасибо!
Филипп
Скажите, а есть ли под 32 бита что-то такое же простое и наглядное, как Turbo Debugger?
Alexey
Филипп
Извините, но у меня Линукс.
Alexey
Филипп
Хорошо!
Филипп
Скажите, а как заставить FASM выдавать отладочную информацию?
Филипп
Скажите, а как заставить FASM выдавать отладочную информацию?
КТ315
『𝔻𝕠𝕟
『𝔻𝕠𝕟
IDA 9.0 beta - инсталлеры под windows, linux, mac
『𝔻𝕠𝕟
Free of charge, так сказать (с одним скриптом👀)
Alexey
Скачали бы уже винду с кайфом
Alexey