Перенаправьте пользователя однажды использующий iptables

имеет вашу бинарную полосу PED его символов? Если так, нет таблицы символов, и у вас нет надежды на поиск этого символа. Вы можете узнать с InterfealF - здесь мой Hello Binary имеет свой символ таблицы:

$ readelf -S hello | grep -i symtab
  [28] .symtab           SYMTAB           0000000000000000  000018f8
$ 

также при запуске GDB, на самом деле началась ваша программа? Похоже, этот символ не разрешен до тех пор, пока не загрузится таблица символов. Он не будет загружен при первом запуске GDB, но к тому времени, когда вы попали Main () . Вы можете просто поставить точку останова в Main () , запустить программу, а затем проверять переменную при попадании в Main () точка останова:

Reading symbols from hello...(no debugging symbols found)...done.
(gdb) x/s *((char **)environ)
No symbol table is loaded.  Use the "file" command.
(gdb) b main
Breakpoint 1 at 0x4005c8
(gdb) r
Starting program: /home/ubuntu/hello 

Breakpoint 1, 0x00000000004005c8 in main ()
(gdb) x/s *((char **)environ)
0x7fffffffe38f: "XDG_VTNR=7"
(gdb) 
1
18.11.2018, 19:23
1 ответ

Ну, если это для розыгрыша, то может сработать надуманный хак: используйте цель LOG iptables для регистрации каждого совпадения перенаправления перед тем, как на самом деле делать перенаправление. Затем иметь скрипт, который извлекает IP из лога и готовит их к iptables цепочки, с действием RETURN или что-то такое, так что правила перенаправления не будут достигнуты.

Я не думаю, что эта проблема может быть надежно решена на уровне iptables.

0
28.01.2020, 01:43

Теги

Похожие вопросы