-=*) Elektronika
http://hackaday.com/2010/09/26/portable-password-vault/
Prosty device (custom made ofc) do przechowywania haseł, który podpina się pod USB i który wprowadza dane hasło udając klawiaturę. Fajne, szczególnie podoba mi się udawanie klawiatury :)
-=*) Programowanie
Przez przypadek natknąłem się dzisiaj na text UI w GDB. Przyznaje, że nie wiedziałem, że coś takiego istnieje.
gdb -tui lub gdbtui
http://sourceware.org/gdb/current/onlinedocs/gdb/TUI.html
-=*) Programowanie
Pisząc pewien programik w C++ (g++) potrzebowałem, w momencie kompilacji, wrzucić zawartość pewnego pliku (nazwijmy go asdf.txt) do stałej (const char content_of_asdf[]).
Wpadłem na trzy pomysły:
- skonwertować zawartość asdf.txt do postaci “\xHE\xXA\xDE\xCY\xMA\xLN\xEJ” i #include’nąć postać skonwertowaną
- wrzucić asdf.txt do resource’ów i skorzystać z LoadResource (niestety, Windows-only)
- skonwertować asdf.txt do pliku objektowego
W przypadku tego ostatniego Tavis powiedział mi, że można to zrobić za pomocą standardowego narzędzia objcopy (pakiet GNU binutils):
objcopy -I binary -O elf32-i386 asdf.txt asdf.o \
--alt-machine-code=3 --redefine-sym=_binary_asdf_txt_start=content_of_asdf
extern const char content_of_asdf[];
-=*) Research
http://dcs.ics.forth.gr/Activities/papers/gpumalware.malware10.pdf
Papierek o wykorzystaniu CUDA w loaderze packera plików wykonywalnych (pomysł brzmi: moduły rozpakowujące AV/etc tego nie obsługują).
(szczerze mówiąc, to papierek raczej bardzo odkrywczy nie jest, ale czuje kronikarski obowiązek odnotowania powstania PoC takiego packera; sekcja future attacks w większości też wydaje mi się naciągana, może z wyjątkiem botnetów używających GPU do łamania haseł)
I tyle...
Comments:
Qt Creator też całkiem nieźle współpracuje z gdb.
Co do gdb - TO GDB MA W OGÓLE JAKIEŚ UI? Pirsze słysze.
Pierwsze linki a widze że jest fajnie ;p Oby było lepiej.
Tzn pomysł i tak brzmiał żeby to do Makefile wrzucić, więc czy to będzie długa komenda czy krótka i tak wielkiej różnicy nie robi.
Niemniej jednak thx za info o xxd, przyznaje że o tym nie wiedziałem ;>
@przemoc
cgdb mówisz... rzucę potem okiem ;)
Co do gdb, no faktycznie nie jest to najbardziej intuicyjny debugger jaki widziałem. Niemniej jednak krzywa uczenia gdb i tak wygląda lepiej niż windbg, a jeśli chodzi o możliwości gdb, to są całkiem przyzwoite (np. w porównaniu z bochsdbg).
@Dreadlish
:)
@Gość
Hehe ;)
Użycie tej opcji z róznymi wartościami daje w wyniku "unknown alternate machine code" a nie bardzo wiem z kąd mogę wziąść wartości Index ( manual ) dla tego argumentu, plik się kompiluje, object się linkuje z następującym msg:
warning: unknown architecture of input file `readme.o' is incompatible with i386 output
a o to binarka:
readme.o: ELF 32-bit LSB relocatable, no machine, version 1 (SYSV), not stripped
Jak widać "no machine" powoduje całe zamieszanie", wie ktoś z kąd wziąść wartość index dla argumentu --alt-machine-code=INDEX ?
Co do wartości, ja wziąłem z /usr/include/linux/elf-em.h
#define EM_386 3
Natomiast nie mam pod ręką x86 żeby sprawdzić co może być nie tak :(
Postaram się sprawdzić w ciągu kilku dni jak się jakiś x86 napatoczy.
Racja, nie wziąłem tego pod uwagę, kompilacja powinna przebiegać w tym wypadku z użyciem opcji -m32 co pominąłem kompilując na maszynie 64bit ;/ i wszystko działa jak należy.
Ps. dla maszyny 64bit alt-machine to 62 co znalazłem w podanym przez ciebie nagłówku
Add a comment: