Сейчас на форуме: tyns777 (+5 невидимых)

 eXeL@B —› Программирование —› Софтовый БСОД
Посл.ответ Сообщение

Ранг: 44.3 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 15 марта 2010 16:15 · Поправил: YURETZS
· Личное сообщение · #1

Нагуглил тут кодец (с васма) софтового бсода:

; ###################################################################### ###

.586p
.model flat, stdcall
option casemap :none ; case sensitive

; ###################################################################### ###
include D:\masm32\include\windows.inc
include D:\masm32\include\kernel32.inc
include D:\masm32\include\user32.inc
include D:\masm32\include\ntdll.inc
includelib D:\masm32\lib\kernel32.lib
includelib D:\masm32\lib\USER32.lib
includelib D:\masm32\lib\ntdll.lib
; ###################################################################### ###
WinMain proto :DWORD,:DWORD,:DWORD,:DWORD
; ###################################################################### ###
.data?
hInstance HINSTANCE ?
CommandLine LPSTR ?
.data
ThreadInformation ULONG ?
OldPrivilege ULONG ?
SE_DEBUG_PRIVILEGE equ 20
.code

start:
mov ThreadInformation,TRUE
invoke RtlAdjustPrivilege, SE_DEBUG_PRIVILEGE, TRUE, FALSE, addr OldPrivilege
invoke ZwSetInformationThread, NtCurrentThread, ThreadBreakOnTermination, addr ThreadInformation, 4
.if !Eax
invoke ZwTerminateThread, NtCurrentThread, eax
.endif
ret
end start



Попробовал скомпилить, выдало кучу ошибок:

R:\PROGRAMMING\!Masm32\BSOD>ml /c /coff /Cp bsod.asm
Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All rights reserved.

Assembling: bsod.asm
bsod.asm(30) : error A2006: undefined symbol : ThreadBreakOnTermination
bsod.asm(30) : error A2114: INVOKE argument type mismatch : argument : 2
bsod.asm(30) : error A2006: undefined symbol : NtCurrentThread
bsod.asm(30) : error A2114: INVOKE argument type mismatch : argument : 1
bsod.asm(32) : error A2006: undefined symbol : NtCurrentThread
bsod.asm(32) : error A2114: INVOKE argument type mismatch : argument : 1

R:\PROGRAMMING\!Masm32\BSOD>link /SUBSYSTEM:WINDOWS /LIBPATH:d:\masm32\lib bso
obj r.res
Microsoft (R) Incremental Linker Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

LINK : fatal error LNK1181: cannot open input file "bsod.obj"


Кто знает значения аргументов NtCurrentThread и ThreadBreakOnTermination ???



Ранг: 309.8 (мудрец), 21thx
Активность: 0.170
Статус: Участник

Создано: 15 марта 2010 16:20
· Личное сообщение · #2

качай kmdkit

-----
Shalom ebanats!




Ранг: 44.3 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 15 марта 2010 16:45
· Личное сообщение · #3

Скачал, но там не всё.
Осталось: ThreadBreakOnTermination




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 15 марта 2010 16:53
· Личное сообщение · #4

Code:
  1. typedef enum _THREADINFOCLASS { 
  2. ThreadBasicInformation, 
  3. ThreadTimes, 
  4. ThreadPriority, 
  5. ThreadBasePriority, 
  6. ThreadAffinityMask, 
  7. ThreadImpersonationToken, 
  8. ThreadDescriptorTableEntry, 
  9. ThreadEnableAlignmentFaultFixup, 
  10. ThreadEventPair_Reusable, 
  11. ThreadQuerySetWin32StartAddress, 
  12. ThreadZeroTlsCell, 
  13. ThreadPerformanceCount, 
  14. ThreadAmILastThread, 
  15. ThreadIdealProcessor, 
  16. ThreadPriorityBoost, 
  17. ThreadSetTlsArrayAddress, 
  18. ThreadIsIoPending, 
  19. ThreadHideFromDebugger, 
  20. ThreadBreakOnTermination, 
  21. MaxThreadInfoClass 
  22. } THREADINFOCLASS;


ThreadBreakOnTermination = 18 / 12h

-----
[nice coder and reverser]




Ранг: 44.3 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 15 марта 2010 17:07
· Личное сообщение · #5

Thanx, получилось, правда Бсод завесил систему, а как сделать чтобы после бсода сразу ребут ?



Ранг: 44.3 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 15 марта 2010 17:15
· Личное сообщение · #6

Разобрался, в настройках винды поставил - автоматически перегружать, всё работает



Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 15 марта 2010 17:16
· Личное сообщение · #7

Ну и причём здесь Основной форум? Перенесено.



Ранг: 44.3 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 15 марта 2010 18:26
· Личное сообщение · #8

2 Flint
В прицепе скомпиленный файл.


1998_15.03.2010_CRACKLAB.rU.tgz - bsod.zip



Ранг: 44.3 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 22 марта 2010 22:27 · Поправил: YURETZS
· Личное сообщение · #9

А есть ли в природе софтовый ресет типа такого:

00000000: B80153 mov ax,05301 ;'S☺'
00000003: 33DB xor bx,bx
00000005: CD15 int 015
00000007: 7217 jc 000000020 --↓1
00000009: B80E53 mov ax,0530E ;'S♫'
0000000C: 33DB xor bx,bx
0000000E: B90201 mov cx,00102
00000011: CD15 int 015
00000013: 720B jc 000000020 --↓1
00000015: B80753 mov ax,05307 ;'S•'
00000018: BB0100 mov bx,1
0000001B: B90300 mov cx,3
0000001E: CD15 int 015




Ранг: 255.8 (наставник), 19thx
Активность: 0.150.01
Статус: Участник
vx

Создано: 22 марта 2010 22:43 · Поправил: Clerk
· Личное сообщение · #10

YURETZS
Вроде линия управления импульсником(или ресет камня не помню) на 0x64 порту.
Code:
  1. ProcessUserModeIOPL -> Ke386SetIOPL():
  2.          KTHREAD.Iopl -> 1
  3.          KPROCESS.Iopl -> 1
  4.          KTRAP_FRAME.EFlags | EFLAGS_IOPL_MASK       ; 3
  5. ; -
  6. KeContextToKframes()
  7.          If KTHREAD.Iopl {
  8.                  KTRAP_FRAME.EFlags | EFLAGS_IOPL_MASK
  9.          }

Тогда всё пространство I/O доступно и инструкции cli/sti из юзермода. Если подумать можно и бсод инициировать. Только TCB-привилегия нужна. Дос не юзаем.


 eXeL@B —› Программирование —› Софтовый БСОД
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати