Opa, fiz um teste que pode dar uma luz, para quem entende!! Alterei o makefile.in que que produz as linhas onde não aparecia o FORTIFY colocando "na unha" a flag, assim. grep g++ ../*.build | grep -v FORTIFY checking for g++... g++ checking whether g++ accepts -g... yes checking dependency style of g++... none checking how to run the C++ preprocessor... g++ -E checking for ld used by g++... /usr/bin/ld -m elf_x86_64 checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC checking if g++ PIC flag -fPIC works... yes checking if g++ supports -c -o file.o... yes checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes ou seja aquelas linhas que não possuíam o FORTiFY passaram a possuir ficando assim: /bin/bash ../../libtool --mode=link g++ -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -D_FORTIFY_SOURCE=2 -o lostirc main.o MainWindow.o MainNotebook.o Tab.o Prefs.o ServerWindow.o GuiCommands.o Entry.o StatusBar.o TextWidget.o NickList.o DCCList.o ../libirc/libirc.a -lgtkmm-2.4 -lgtk-x11-2.0 -lgdkmm-2.4 -lgiomm-2.4 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lfontconfig -lfreetype -latkmm-1.6 -latk-1.0 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lcairo mkdir .libs g++ -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -Wl,--as-needed -D_FORTIFY_SOURCE=2 -o lostirc main.o MainWindow.o MainNotebook.o Tab.o Prefs.o ServerWindow.o GuiCommands.o Entry.o StatusBar.o TextWidget.o NickList.o DCCList.o ../libirc/libirc.a -lgtkmm-2.4 -lgdkmm-2.4 -lgiomm-2.4 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lfontconfig /usr/lib/x86_64-linux-gnu/libfreetype.so -latkmm-1.6 -latk-1.0 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lcairo -Wl,--rpath -Wl,/usr/lib/x86_64-linux-gnu -Wl,--rpath -Wl,/usr/lib/x86_64-linux-gnu No entanto..... hardening-check -v debian/lostirc/usr/bin/lostirc debian/lostirc/usr/bin/lostirc: Position Independent Executable: yes Stack protected: yes Fortify Source functions: no, only unprotected functions found! unprotected: gethostname unprotected: memmove unprotected: recv unprotected: read unprotected: memcpy Read-only relocations: yes Immediate binding: yes ou seja o mesmo resultado! O bug https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=673112 talvez possa ajudar também. []'s kretcheu :x Em 24-07-2016 14:15, Herbert Fortes escreveu: > >>>> >>>> Se o binário final não tem as features de hardening, tem alguma coisa >>>> quebrada no build system que está impedindo as flags certas de chegarem >>>> na linha de comando do compilador. a não ser que a feature esteja lá e >>>> seja um bug do lintian por não conseguir detectar que o binário na >>>> verdade _tem_ todas as features de hardening, adicionar um override pra >>>> calar a boca do lintian não é certo (se de fato fosse um bug no lintian, >>>> você até poderia colocar um override, mas só depois de reportar um bug >>>> contra o lintian). >>> >>> O blhc não reclama, mas o hardening-check sim. >>> >>> Não sei se é válido, mas fiz o seguinte: >>> >>> $ grep g++ *.build | grep -v FORTIFY >>> >>> >>> /bin/bash ../../libtool --mode=link g++ -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o lostirc main.o >>> MainWindow.o MainNotebook.o Tab.o Prefs.o ServerWindow.o GuiCommands.o Entry.o StatusBar.o TextWidget.o NickList.o DCCList.o ../libirc/libirc.a -lgtkmm-2.4 -lgtk-x11-2.0 -lgdkmm-2.4 -lgiomm-2.4 >>> -lgtk- >>> x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lfontconfig -lfreetype -latkmm-1.6 -latk-1.0 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lpangocairo-1.0 -lpango-1.0 >>> -lgobject-2.0 -lglib-2.0 -lcairo >>> g++ -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -Wl,--as-needed -o lostirc main.o MainWindow.o MainNotebook.o Tab.o >>> Prefs.o >>> ServerWindow.o GuiCommands.o Entry.o StatusBar.o TextWidget.o NickList.o DCCList.o ../libirc/libirc.a -lgtkmm-2.4 -lgdkmm-2.4 -lgiomm-2.4 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lgio-2.0 >>> -lpangoft2-1.0 -lfontconfig /usr/lib/x86_64-linux-gnu/libfreetype.so -latkmm-1.6 -latk-1.0 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 >>> -lcairo -Wl,--rpath -Wl,/usr/lib/x86_64-linux-gnu -Wl,--rpath -Wl,/usr/lib/x86_64-linux-gnu >>> >>> -D_FORTIFY_SOURCE=2 não aparece em dois momentos. >> >> parece ser um falso positivo do blhc (*build log* hardening check): as >> flags aparecem no log em algum momento, mas não em todos os momentos, e >> em especial não nos momentos certos :) >> >> o hardening-check reclama porque ele checa os binários de fato, e não >> acha as features de hardening. o build system tá quebrado. > > Preciso rever o upload que fiz para o xmlrpc-c... > > > > abraço, > -- Herbert Parentes Fortes Neto (hpfn) >
Attachment:
signature.asc
Description: OpenPGP digital signature