2016-11-17, 17:02
  #1
Medlem
Jag har gjort ett program där man behöver ett lösenord för att ta sig vidare (lösenord: "abc123"). Jag har också ett program som genererar lösenord som ska testas på målprogrammet, tills man har gissat fram rätt lösenord. Själva programmet där man ska logga in är färdigt och buteforce-algoritmen är färdig men hur ska gissningarna från bruteforce-programmet testas i målprogrammet?

//Tack på förhand
Citera
2016-11-17, 17:33
  #2
Medlem
Bleppe_Bfs avatar
Vet att i unix liknande miljöer så kan man ju jobba med pipes och stdin/stdout.
Vet faktiskt inte hur det går till i Windows, skulle vara intressant att veta.

https://msdn.microsoft.com/en-us/library/windows/desktop/aa365799(v=vs.85).aspx

Enligt Microsoft själva så verkar det vara samma princip som gäller där.

http://stackoverflow.com/questions/14574170/how-do-i-use-a-pipe-to-redirect-the-output-of-one-command-to-the-input-of-anothe

Named pipes. Embrace and extend in action.

http://www.drdobbs.com/windows/using-named-pipes-to-connect-a-gui-to-a/231903148
__________________
Senast redigerad av Bleppe_Bf 2016-11-17 kl. 17:36.
Citera
2016-11-17, 20:59
  #3
Medlem
Protons avatar
C#, VB.NET och .NET Framework --> Övriga utvecklingsfrågor
/Moderator
Citera
2016-11-19, 03:02
  #4
Medlem
Citat:
Ursprungligen postat av SweGustaf
Jag har gjort ett program där man behöver ett lösenord för att ta sig vidare (lösenord: "abc123"). Jag har också ett program som genererar lösenord som ska testas på målprogrammet, tills man har gissat fram rätt lösenord. Själva programmet där man ska logga in är färdigt och buteforce-algoritmen är färdig men hur ska gissningarna från bruteforce-programmet testas i målprogrammet?

//Tack på förhand

Okej, jag antar att du inte har målprogrommets källkod utan du vill iterera igenom en kombinatoriskt framtagen grupp av strängar att prova sig igenom. Om målprogrammet et har ett öppet fönster eller öppen dialog box så kan du använda funktionen SendMessage av typen WM_CHAR,
Du behöveer ha det öppna fönstrets HANDLE,

En del Windows program läser nämligen inte från stdin alls, utan processar bara WM_MESSAGES
Citera
2016-11-19, 14:45
  #5
Medlem
Citat:
Ursprungligen postat av DrSvenne
Om målprogrammet et har ett öppet fönster eller öppen dialog box så kan du använda funktionen SendMessage av typen WM_CHAR,

Alltså jag menar att ditt målprogram har antgligen en login dialog box, när strängen är inlagd i den så kan du prova att skicka in ett retur tecken för att simulera en tryckning på OK-knappen.

Nu kommer jag inte riktigt ihåg men man brukar kunna få HANDLEN för målprogrammets huvudfönster.

med funktionen Get Top most window eller vad den heter. Sen finns det också GetProcess funktionsserien för tt plock fram handlen till vilket fönster som progrmmet har.

Om målprogrammet inte har ett fönster, dvs är ett konsol program så är det normala att det läser input ifrån stdin
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in