Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Wie BlueScreens erzeugen? (https://www.delphipraxis.net/55757-wie-bluescreens-erzeugen.html)

Morcsch 26. Okt 2005 12:40


Wie BlueScreens erzeugen?
 
Weis jemand von euch wie man absichtlich einen Bluescreen bei Windows XP Pro erzeugen kann , bzw. hat jemand von euch nen Programm was nen Bluescreen erzeugt?
Bräuchte es für Testzwecke.

sakura 26. Okt 2005 12:43

Re: Wie BlueScreens erzeugen?
 
Siehe hier: http://www.delphipraxis.net/internal...highlight=bsod

...:cat:...

sh17 26. Okt 2005 12:44

Re: Wie BlueScreens erzeugen?
 
Hier evtl das Original.

Vielleicht funktioniert das ja noch unter XP

Tip #56: Force Windows 2000 Crash

Perhaps they made it too stable? There is a registry entry that you can use to force a blue stop screen on Windows 2000 (hopefully this is because you won't ever see one otherwise). First, backup your registry, then make the following change:

Hive: HKEY_LOCAL_MACHINE
Key: System\CurrentControlSet\Services\i8042prt\Paramet ers
Name: CrashOnCtrlScroll
Data Type: REG_DWORD
Value: 1 (0 or nothing will disable the feature)

After a restart, holding down the right-side CTRL key and pressing the Scroll lock key twice will generate the Blue Screen of Death.

Ansonsten vielleicht

http://www.google.de/search?sourceid...rce+blueScreen

Olli 26. Okt 2005 13:01

Re: Wie BlueScreens erzeugen?
 
Das können per-se nur Treiber und der Kernel. Es gibt IMO von OSR ein solches Tool. Um es runterzuladen mußt du dich dort aber anmelden:

BANG! -- Crash on Demand Utility

Morcsch 26. Okt 2005 13:07

Re: Wie BlueScreens erzeugen?
 
Danke für die Hilfe. Den Bluescreen konnten wir erzeugen, aber leider hat es noch nicht funktioniert die Farbe des Bluescreens zu ändern.

sh17 26. Okt 2005 13:09

Re: Wie BlueScreens erzeugen?
 
Und wieso jetzt die Farbe ändern?

Morcsch 26. Okt 2005 13:11

Re: Wie BlueScreens erzeugen?
 
Uns nervt das Blau und wir möchten bei dem Bluescreen ne andere Farbe haben. Das funktioniert aber leider nicht.

sh17 26. Okt 2005 13:12

Re: Wie BlueScreens erzeugen?
 
Davon mal abgesehen, welchen Sinn macht es, dauernd eine BlueScreen zu erzeugen und sich den dann noch in einer anderen Farbe anzusehen?

sh17 26. Okt 2005 13:14

Re: Wie BlueScreens erzeugen?
 
Ich kann nur immer wieder auf Google verweisen, die Antworten springen einen geradezu an:

http://www.google.de/search?sourceid...ueScreen+Color

Here is how to change the colours of the Blue Screen of Death.

You can change the normal colours of the background and text when you get a Blue Screen of Death, ( BSOD ) to something new and exciting!

Edit the SYSTEM.INI file in the Windows directory:

In the [386Enh] add the entries:

MessageTextCOLOR=X
MessageBackCOLOR=X

Where X is replace by the number for each of the following colours:

Black = 0
Blue = 1
Green = 2
Cyan = 3
Red = 4
Magenta = 5
Yellow/Brown = 6
White = 7(Well, you couldn't see it if I coloured it white now could you?)
Grey = 8
Bright Blue = 9
Bright Green = A
Bright Cyan = B
Bright Red = C
Bright Magenta = D
Bright Yellow = E
Bright White = F (*See white!)

rayj 26. Okt 2005 13:16

Re: Wie BlueScreens erzeugen?
 
Ideen haben die Leute *G*
aber wieder was gelernt mit den Farben...^^

Morcsch 26. Okt 2005 13:20

Re: Wie BlueScreens erzeugen?
 
Leider funktioniert das mit den Farben bei dem absichtlich generierten Bluescreen nicht.

Olli 26. Okt 2005 13:20

Re: Wie BlueScreens erzeugen?
 
Wie wäre es mit einem geskinnten BSOD?

http://reverseengineering.online.fr/...zip/BmpSOD.zip

Olli 26. Okt 2005 13:27

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von Morcsch
Leider funktioniert das mit den Farben bei dem absichtlich generierten Bluescreen nicht.

Die sind, soweit ich mich entsinne, auch in der NTOSKRNL.EXE festgelegt. Und sorry, aber NTOSKRNL.EXE schert sich einen Sch**ßdreck um win.ini oder system.ini :mrgreen: ... auf Windows 9x könnte man damit aber Glück haben *g*

s.h.a.r.k 26. Okt 2005 13:51

Re: Wie BlueScreens erzeugen?
 
Warum willst denn unbedingt die Farbe ändern?! Dann wäre ein Bluescreen ja kein Bluescreen mehr, sondern ein Greenscreen oder Redscreen. :dancer:

Also wäre der Sinn und Zweck eines BlueScreens in Frage gestellt... Und bei NT Systemen kommt sowas sowieso sehr selten vor (will aber keine Diskussion vom Zaun brechen, wer wie viele BlueScreens mit NT-System erzeugt hat).

Olli 26. Okt 2005 14:48

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von s.h.a.r.k
Und bei NT Systemen kommt sowas sowieso sehr selten vor

:thumb:

Luckie 26. Okt 2005 14:57

Re: Wie BlueScreens erzeugen?
 
Nun ja, er scheint diese Bluescreens so oft zu sehen, dass ihn schon die Farbe nervt. Aber wenn es bei mir so weit wäre, dann hätte ich das System schon lange in die Tonne getreten. :mrgreen:

Morcsch 26. Okt 2005 20:14

Re: Wie BlueScreens erzeugen?
 
Ich habe soviele Bluescreens noch nicht gesehen. Bei Windows Server 2003 habe ich noch keinen einzigen gehabt.
Nen Arbeitskollege kriegt es aber hin bei jedem System nen Bluescreen angezeigt zubekommen.
Wir haben das mit den Farben durch Zufall im Internet gefunden und wollten es mal ausprobieren, weil uns langweilig war und unser MCDST Trainer das acuh wissen wollte.

SirThornberry 26. Okt 2005 20:23

Re: Wie BlueScreens erzeugen?
 
ich versteh das ganze nicht nicht. Er wollte wissen wie er einen Bluescreen erzeugt weil er anscheinend sonst keinen hinn bekommt. Und dann sagt er die Farbe nervt ihn :gruebel: Wenn er ihn so nie sieht wie kann dann die Farbe nerven???

Morcsch 26. Okt 2005 20:33

Re: Wie BlueScreens erzeugen?
 
Der kriegt sonst ständig Bluescreens hin (selbst bei der Installation von Windows XP Pro), nur als er das mit der Farbe ausprobieren wollte, hat er keinen Bluescreen hinbekommen.

Olli 26. Okt 2005 20:46

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von Morcsch
Ich habe soviele Bluescreens noch nicht gesehen. Bei Windows Server 2003 habe ich noch keinen einzigen gehabt.

Zitat:

Zitat von Morcsch
Der kriegt sonst ständig Bluescreens hin (selbst bei der Installation von Windows XP Pro), nur als er das mit der Farbe ausprobieren wollte, hat er keinen Bluescreen hinbekommen.

:gruebel: :gruebel: :gruebel: :gruebel: :gruebel:

ErazerZ 26. Okt 2005 20:53

Re: Wie BlueScreens erzeugen?
 
ich hab mal mit der api NtCreateProcess einen BlueScreen erzeugt auf WinXP, einfach aufrufen mit keinen paramentern (zb. einfach 0, nil usw übergeben)
Delphi-Quellcode:
NtCreateProcess( OUT PHANDLE ProcessHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN HANDLE ParentProcess, IN BOOLEAN InheritObjectTable, IN HANDLE SectionHandle OPTIONAL, IN HANDLE DebugPort OPTIONAL, IN HANDLE ExceptionPort OPTIONAL );

Daniel G 26. Okt 2005 20:55

Re: Wie BlueScreens erzeugen?
 
Bedenke Olli:

Der Unterschied zwischen Ich und Er! Ich muss ja nicht immer dabei gewesen sein, wenn Er einen BSOD hatte....

Es sei denn, Morcsch ist schizophren.

w3seek 26. Okt 2005 20:57

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von ErazerZ
ich hab mal mit der api NtCreateProcess einen BlueScreen erzeugt auf WinXP, einfach aufrufen mit keinen paramentern (zb. einfach 0, nil usw übergeben)

Halte ich fuer ein Geruecht. Unter NT4 vielleicht moeglich, aber ab 2000 sollte das der vergangenheit angehoeren.

Morcsch 26. Okt 2005 21:00

Re: Wie BlueScreens erzeugen?
 
Daniel G, danke für die Erklärung.

Bin nicht schizophren.

Daniel G 26. Okt 2005 21:01

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von Morcsch
Bin nicht schizophren.

Siehste, habe ich mir doch gedacht. :mrgreen:

Olli 26. Okt 2005 21:18

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von w3seek
Halte ich fuer ein Geruecht. Unter NT4 vielleicht moeglich, aber ab 2000 sollte das der vergangenheit angehoeren.

Dito!

ErazerZ 26. Okt 2005 21:39

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von w3seek
Zitat:

Zitat von ErazerZ
ich hab mal mit der api NtCreateProcess einen BlueScreen erzeugt auf WinXP, einfach aufrufen mit keinen paramentern (zb. einfach 0, nil usw übergeben)

Halte ich fuer ein Geruecht. Unter NT4 vielleicht moeglich, aber ab 2000 sollte das der vergangenheit angehoeren.

ja .. sollte, ist es aber nicht, kannst ja testen, bei mir hats funktioniert unter WinXP SP2

Olli 26. Okt 2005 22:18

Re: Wie BlueScreens erzeugen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von ErazerZ
ja .. sollte, ist es aber nicht, kannst ja testen, bei mir hats funktioniert unter WinXP SP2

Auf 2003 SP0 kracht nix. Auf XP SP1 ebenfalls nicht. Windows 2000 SP4 auch nicht. Das ist ein ziemlich repräsentativer Querschnitt durch die Systeme seit NT 4.0 - und die SPs dürften aufgrund der Konsistenz des Ergebnisses nichts daran ändern.

Keine Ahnung was ihr dort übergeben habt, aber ich habe folgendes kleine C-Programm:

Code:
#define _X86_
#define WIN32_LEAN_AND_MEAN
#define UNICODE

#include <windows.h>

#pragma optimize("gsy",on)

#pragma comment(lib,"kernel32.lib")
#pragma comment(lib,"user32.lib")
#pragma comment(lib,"ntdll.lib")

#pragma comment(linker, "/opt:nowin98")
#pragma comment(linker, "/entry:Main")
#pragma comment(linker, "/opt:ref")
#pragma comment(linker, "/align:512")
#pragma comment(linker, "/fixed")
#pragma comment(linker, "/subsystem:windows")

#define NTSTATUS LONG

NTSYSAPI
NTSTATUS
NTAPI
NtCreateProcess(
    PHANDLE ProcessHandle,
    ACCESS_MASK DesiredAccess,
    PVOID ObjectAttributes, // POBJECT_ATTRIBUTES
    HANDLE InheritFromProcessHandle,
    BOOLEAN InheritHandles,
    HANDLE SectionHandle,
    HANDLE DebugPort,
    HANDLE ExceptionPort
  );

__declspec(naked) void __cdecl Main(void)
{
  NtCreateProcess(0, 0, 0, 0, 0, 0, 0, 0);
  MessageBox(0, L"This should never be seen! *booom*", 0, 0);
  ExitProcess(0);
}
Vielleicht solltet ihr mal die Software, die ihr benutzt, besser überprüfen. Ich ahne schon, was da abgeht :mrgreen: ... ich denke mal, daß ihr eine Menge Progrämmchen ala Firewalls, AVs usw. oben habt. Ich habe eine saubere Installation all dieser OS. Lernt einfach mal einen BSOD zu entziffern, dann werdet ihr sehen, daß ihr mit euren Usermode-Progrämmchen das OS schwerlich crashen könnt (es gibt Ausnahmen, die aber auf falscher Parameterbearbeitung im KM beruhen und in NT 4.0 gehäuft auftraten, siehe w3seek's Kommentar). Wenn ihr im KM das OS crasht, dann seid ihr natürlich echte Helden. Weil das ist ach so schwer :roll:

So, und jetzt kommt ihr.

Nachtrag: Für alle die mir nicht glauben, hier das Disassemblat des Kompilats:
Code:
.text:00400400 start:
[color=red].text:00400400                 push   0
.text:00400402                 push   0
.text:00400404                 push   0
.text:00400406                 push   0
.text:00400408                 push   0
.text:0040040A                push   0
.text:0040040C                push   0
.text:0040040E                push   0
.text:00400410                 call   ds:NtCreateProcess[/color]
.text:00400416                 push   0
.text:00400418                 push   0
.text:0040041A                push   offset aThisShouldNeve ; "This should never be seen! *booom*"
.text:0040041F                push   0
.text:00400421                 call   ds:MessageBoxW
.text:00400427                 push   0
.text:00400429                 call   ds:ExitProcess
Noch'n Nachtrag: Ich habe das Programm aktualisiert, so daß es eine MessageBox anzeigt. Sollte ja nicht passieren bei einem BSOD. Außerdem habe ich es getestet auf Windows NT 4.0 ohne SP, auf Windows NT 3.51 (mit erstem "SP") und es kam in keinem Fall zu einem BSOD.
Ich lach mich jetzt voraussichtlich erstmal in den Schlaf und schaue mir morgen dann die Ausreden an :mrgreen:

Im Anhang das Kompilat! Benutzung erfolgt auf eigene Gefahr!

Fazit: Weder auf NT 3.51, NT 4.0, 2000, XP noch 2003 kam es zu einem BSOD. Alle diese Systeme sind "sauber" (also keine wirklich ins System eingreifende Software).

Olli 27. Okt 2005 09:53

Re: Wie BlueScreens erzeugen?
 
Och *schnief* keine Ausreden :mrgreen:

ErazerZ 27. Okt 2005 13:48

Re: Wie BlueScreens erzeugen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
oh ne ausrede moment mal

Mein Code:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
{
NtCreateProcess( OUT PHANDLE ProcessHandle,
                 IN ACCESS_MASK DesiredAccess,
                 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
                 IN HANDLE ParentProcess,
                 IN BOOLEAN InheritObjectTable,
                 IN HANDLE SectionHandle OPTIONAL,
                 IN HANDLE DebugPort OPTIONAL,
                 IN HANDLE ExceptionPort OPTIONAL );  }

procedure TForm1.Button1Click(Sender: TObject);
var
  h: THandle;
  ntx: function(ProcessHandle: PChar; DesiredAccess: PChar; ObjectAttributes: PChar; ParentProcess: PChar; InheritObjectTable: BOOL; SectionHandle:PChar; DebugPort: PChar; ExceptionPort: PChar): Integer;
begin
  h := GetModuleHandle('ntdll.dll');
  ntx := GetProcAddress(h, 'NtCreateProcess');
  ntx(nil, nil, nil, nil, FALSE, nil, nil, nil);
end;

end.
Mein OS:
Windows XP SP2

Meine CPU:
3600 MHZ, 1 GB RAM

und noch ein kleines bild als beweis

Olli 27. Okt 2005 13:57

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von ErazerZ
oh ne ausrede moment mal

[...]

Mein OS:
Windows XP SP2

Meine CPU:
3600 MHZ, 1 GB RAM

und noch ein kleines bild als beweis

Na dann will ich mich doch nochmal zitieren.
Zitat:

Zitat von Olli
Vielleicht solltet ihr mal die Software, die ihr benutzt, besser überprüfen. Ich ahne schon, was da abgeht :mrgreen: ... ich denke mal, daß ihr eine Menge Progrämmchen ala Firewalls, AVs usw. oben habt. Ich habe eine saubere Installation all dieser OS. Lernt einfach mal einen BSOD zu entziffern, dann werdet ihr sehen, daß ihr mit euren Usermode-Progrämmchen das OS schwerlich crashen könnt

Ich darf dir ein Geheimnis verraten? :zwinker: Du hast Kaspersky Antivirus auf deinem System. Und genau das verursacht den Crash. Siehe BSOD - "klif.sys". Hättest du den BSOD mal lieber nicht gepostet :zwinker: :mrgreen:

Huch, da hat wohl irgendein Knut die API gehookt aber seinen eigenen Code nicht sauber genug gegen fehlerhafte Parameter gesichert :mrgreen: :stupid: :mrgreen: :zwinker:

ErazerZ 27. Okt 2005 13:58

Re: Wie BlueScreens erzeugen?
 
ne KAV hab ich nicht, leider, nur NOD32

edit: ich habs doch installiert :O, aber ausgeführt ist das ding nicht, zumindest kein service am laufenden

Olli 27. Okt 2005 14:01

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von ErazerZ
ne KAV hab ich nicht, leider, nur NOD32

Dann hattest du es entweder mal oben oder NOD32 benutzt die KAV-Engine, oder es ist ein Rootkit welches sich als KAV tarnt. Du darfst dir's aussuchen.
Zwischenruf (nacgetragen): Gerade dein Edit gesehen ;) ... dann läuft zumindest der KAV-Treiber. Und dieser Treiber hookt dann wohl je nach System (deins XP also *Ex) NtCreateProcess() oder NtCreateProcessEx(). Ob der das inline macht oder die SSDT patcht kann man ohne den Treiber natürlich nicht sagen *g*

Jedenfalls fällt das nicht unter sauberes System. Und wenn eine Komponente die nicht zum System gehört das System crasht kann das System eben tausendmal nix dafür. Ihr habt oben aber Windows dafür verantwortlich gemacht. Ich habe das Gegenteil nachgewiesen. Wo ist das Problem? :mrgreen: :zwinker:

ErazerZ 27. Okt 2005 14:06

Re: Wie BlueScreens erzeugen?
 
Ok stimmt, hast recht es liegt bestimmt an Kaspersky :D

Olli 27. Okt 2005 14:09

Re: Wie BlueScreens erzeugen?
 
Wärst du noch so lieb mir die Dateiversion des Treibers zu nennen oder alternativ den Treiber per PM zuzuschicken?!

Ich habe ganz zufällig seit heute Zugang zu einem geschlossenen Forum, welches sich mit Malware beschäftigt und unter anderem treiben sich dort auch Leute von den Kaspersky Labs rum ;)

ErazerZ 27. Okt 2005 14:20

Re: Wie BlueScreens erzeugen?
 
pm ist schon verschickt worden :)

Olli 30. Jun 2007 23:37

Re: Wie BlueScreens erzeugen?
 
Nur zur Info: DoS vulnerability in Kaspersky driver, ist exakt die Lücke, die ich aufgrund deines Beitrags (@ErazerZ) gefunden und Kaspersky gemeldet hatte. Habe denjenigen der mir damals im Oktober 2005 geantwortet hatte sogar auf dem AV Workshop hier in Reykjavik getroffen. Jetzt ein paar Wochen nach dem Workshop sehe ich, daß die Triefnasen erst nach mehr als anderthalb Jahren den Bug gefixt haben.

Traurig. Hätte ich es mal lieber offen bei Full-Disclosure oder SecurityFocus gemeldet :|

Sorry für's Wiederaufwärmen, aber ich fand das sollte mal erwähnt werden ...

Nachtrag: http://blog.assarbad.net/20070630/wh...eck-kaspersky/

ErazerZ 30. Jun 2007 23:58

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von Olli
Nur zur Info: DoS vulnerability in Kaspersky driver, ist exakt die Lücke, die ich aufgrund deines Beitrags (@ErazerZ) gefunden und Kaspersky gemeldet hatte. Habe denjenigen der mir damals im Oktober 2005 geantwortet hatte sogar auf dem AV Workshop hier in Reykjavik getroffen. Jetzt ein paar Wochen nach dem Workshop sehe ich, daß die Triefnasen erst nach mehr als anderthalb Jahren den Bug gefixt haben.

Traurig. Hätte ich es mal lieber offen bei Full-Disclosure oder SecurityFocus gemeldet :|

Sorry für's Wiederaufwärmen, aber ich fand das sollte mal erwähnt werden ...

Oh mein Gott.. Ich bin so Halb-berühmt, der wahre aber nicht gekannte Entdecker.

Olli 1. Jul 2007 00:59

Re: Wie BlueScreens erzeugen?
 
Zitat:

Zitat von ErazerZ
Oh mein Gott.. Ich bin so Halb-berühmt, der wahre aber nicht gekannte Entdecker.

Hattest du nicht einfach Windows dafür verantwortlich gemacht? :zwinker: :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz