Nolife :(
Brrr fait froid, tient en parlant de ca, le nouvel opus du zine venu du québec vient de sortir. Mindkind, hé oui ils récidivent. On se retrouve avec un zine plus orienté « journal et enquête » avec des morceaux de scène under info, de l’humour et du clash, d’ailleurs je prend encore cher dans le mag, extrait : « Assaye pas de nous convaincre que t’as une vie Ivan… ça fit pas :-P », excusez les, ils ne savent pas ce qu’ils disent, je me demande si les fautes sont faites exprès ou si elles sont dues à l’accent :p. Sinon l’article de Wyzeman « The circle of lost 3 hacker », la suite de son enquête sur la team devhell et de son rapprochement avec le phrack staff, le fameux « Circle of Lost Hackers », j’adore :). Bon je ne vais pas troller plus dessus sinon je vais encore me faire défacer …
Pendant que j’y suis, j’aimerais pour faire découvrir une série de scripts pour WinDbg fait par le grand et discret Yolejedi. Labo Windbg Script est une bibliothèque permettant d’éffectuer des opérations sur des composants noyau sans se prendre la tête avec la doc de WinDbg. On peut dumper l’IDT, la GDT, les MSR, les syscalls à la fois de ntsokrnl et de win32k, retrouver des process cachés avec une simple petite commande ! Exemple :
kd> ad /q *; $$><script\\@@init_cmd.wdbg;
Labo Windbg Script : Ok :)
('al' for display all commands)
kd> al
Alias Value
------- -------
!!display_all_gdt $$><script\display_all_gdt.wdbg;>
!!display_all_idt $$><script\display_all_idt.wdbg;>
!!display_all_msrs $$><script\display_all_msrs.wdbg;>
!!display_current_gdt $$><script\display_current_gdt.wdbg;>
!!display_current_idt $$><script\display_current_idt.wdbg;>
!!display_current_msrs $$><script\display_current_msrs.wdbg;>
!!display_system_call $$><script\display_system_call.wdbg;>
!!hide_current_process $$><script\hide_current_process.wdbg;>
!!save_all_reports $$><script\save_all_reports.wdbg;>
!!search_hidden_process $$><script\search_hidden_process.wdbg;>
!@check_msr_and_printf_name $$><script\check_msr_and_printf_name.wdbg;>
!@display_gdt $$><script\display_gdt.wdbg;>
!@display_idt $$><script\display_idt.wdbg;>
!@display_msrs $$><script\display_msrs.wdbg;>
!@display_thread_process_info $$><script\display_thread_process_info.wdbg;>
!@get_debug_mode $$><script\get_debug_mode.wdbg;>
!@get_original_ntcall $$><script\get_original_ntcall.wdbg;>
!@get_original_win32kcall $$><script\get_original_win32kcall.wdbg;>
!@get_system_version $$><script\get_system_version.wdbg;>
!@hide_process $$><script\hide_process.wdbg;>
!@is_hidden_process $$><script\is_hidden_process.wdbg;>
!@printf_state_name_of_thread $$><script\printf_state_name_of_thread.wdbg;>
rep_root script
kd> !!display_all_gdt
#################################
# Global Descriptor Table (GDT) #
#################################
Processor 00
Base : 8003F000 Limit : 03FF
Off. Sel. Type Sel.:Base Limit Present DPL AVL Informations
---- ---- -------- ------------- -------- ------- --- --- ------------
0000 0000 NullDesc ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
0008 0008 Code32 00000000 FFFFFFFF YES 0 0 Execute/Read, accessed (Ring 0)CS=0008
0010 0010 Data32 00000000 FFFFFFFF YES 0 0 Read/Write, accessed (Ring 0)DS/SS/ES=0010
0018 001B Code32 00000000 FFFFFFFF YES 3 0 Execute/Read, accessed (Ring 3)CS=001B
0020 0023 Data32 00000000 FFFFFFFF YES 3 0 Read/Write, accessed (Ring 3)DS/SS/ES=0023
0028 0028 TSS32 80042000 000020AB YES 0 0 (Busy) Eip = 0c4d8b51
0030 0030 Data32 FFDFF000 00001FFF YES 0 0 Read/Write, accessed (Ring 0)FS=0030 FS:0->(KPCR*)FFDFF000
0038 003B Data32 00000000 00000FFF YES 3 0 Read/Write, accessed (Ring 3)FS=003B FS:0->(TEB*) 00000000
0040 0043 Data16 00000400 0000FFFF YES 3 0 Read/Write
0048 0048 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
0050 0050 TSS32 80550880 00000068 YES 0 0 (Available) Eip = nt!KiTrap08 (804e069d)
0058 0058 TSS32 805508E8 00000068 YES 0 0 (Available) Eip = nt!KiTrap02 (804df5b6)
0060 0060 Data16 00022F30 0000FFFF YES 0 0 Read/Write, accessed
0068 0068 Data16 000B8000 00003FFF YES 0 0 Read/Write
0070 0070 Data16 FFFF7000 000003FF YES 0 0 Read/Write
0078 0078 Code16 80400000 0000FFFF YES 0 0 Execute/Read
0080 0080 Data16 80400000 0000FFFF YES 0 0 Read/Write
0088 0088 Data16 00000000 00000000 YES 0 0 Read/Write
0090 0090 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
0098 0098 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00A0 00A0 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00A8 00A8 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00B0 00B0 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00B8 00B8 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00C0 00C0 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00C8 00C8 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00D0 00D0 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00D8 00D8 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 00000000 00000000
00E0 00E0 Code16 FA7B5000 0000FFFF YES 0 0 Execute/Read, accessed
00E8 00E8 Data16 00000000 0000FFFF YES 0 0 Read/Write
00F0 00F0 Code16 804D8B28 0003B337 YES 0 0 Execute-Only
00F8 00F8 Data16 00000000 0000FFFF YES 0 0 Read/Write
0100 0100 Data32 FA7C5000 0000FFFF YES 0 0 Read/Write, accessed
0108 0108 Data32 FA7C5000 0000FFFF YES 0 0 Read/Write, accessed
0110 0110 Data32 FA7C5000 0000FFFF YES 0 0 Read/Write, accessed
0118 0118 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 8003F120 00000000
0120 0120 Reserved ....:........ ........ NO 0 0 Raw Descriptor : 8003F128 00000000
[...]
C’est beau ! La doc est bien faite en plus, je vous laisse donc vous amusez avec le travail du mâitre :
http://ivanlef0u.fr/repo/labo_windbg_script.zip
Yolejedi si tu lis ça, revient
5 comments décembre 13th, 2007