HTTPS Sniffer -> HttpQueryInfo -> unbekannter GetLastError()-Code, außer bei HTTP_QUERY_REQUEST_METHOD
-
Guten Tag,
ich wende mich an euch weil ich einfach nicht mehr weiter weiß...
Also, ich schreib gerade einen HTTP Sniffer und bin gerade dabei HTTPS-Sniffing einzubauen.
Dazu hooke ich beim InternetExplorer ( der Firefox kommt erst noch :/) die Funktion HttpSendRequestA.Das ganze wird mit einem Inline Hook, der über Code Injection gesetzt wird gemacht ( ohne Tutorial oä geschrieben,
also nicht denken das ich keine Ahnung habe von dem was ich machen will
)Wenn ich in meinem Hook InternetQueryOption mit HTTP_QUERY_REQUEST_METHOD aufrufe klappt alles ( der Buffer enthält danach GET oder POST),
wenn ich aber die gleiche Funktion mit HTTP_QUERY_CONTENT_TYPE aufrufe gibt sie false zurück.
Außerdem ist LastError im OllyDbg dann 00002F76, ein Code der von OllyDbg nicht Formatiert werden kann und auch in der MSDN nicht auftaucht
Komischer weise passiert beim Aufruf von InternetQueryOption das gleiche...
Ich hoffe ihr könnt mir helfen, ich weiß sonst echt nicht wie ich weitermachen soll

Schon mal vielen Dank
-
Laut meiner MSDN nimmt InternetQueryOption gar keine Flags namens HTTP_*. Meinst du HttpQueryInfo?
PS: Ist ein HTTP-Sniffer via Browser-Hooking nicht unzureichend? "Normale" Anwendungen können schließlich auch über HTTP kommunizieren, zudem müsste es doch schwierig/langwierig sein, alle Browser abzudecken?
-
Hallo

Natürlich mein ich HttpQueryInfo, da hatt ich meine Gedanken wohl mal wieder wo anders, tut mir Leid.
Unzureichend? Naja, kennst du einen anderen Weg HTTPS Requests zu sniffen?
HTTP Requests werden von allen Programmen über einen RAWSocket Sniffer geloggt. Wär für jeden Vorschlag dankbar.
Ansonsten bleibt mir wohl nicht viel übrig
Und wenn Firefox und IE abgedeckt sind sollte das für so ein kleines privates
Projekt reichen
Aber zu dem Fehler weißt du auch nichts, oder?
mfg
-
AnyRandomName schrieb:
Unzureichend? Naja, kennst du einen anderen Weg HTTPS Requests zu sniffen?
Ne, ich kenne mich da kaum aus, dachte nur es wäre für HTTP klüger, auf Treiber-Ebene mitzusniffen (was aber auch relativ kompliziert sein soll), fällt für HTTPS aber sicherlich weg..
AnyRandomName schrieb:
Aber zu dem Fehler weißt du auch nichts, oder?
Leider nein. Lustigerweise gibt's bei Google zu "HttpQueryInfo 2F76" kaum Ergebnisse, bei "HttpQueryInfo 12150" aber jede Menge
Vielleicht ist da was dabei, viel Glück! (Und berichte mal, wenn du die Lösung hast)
-
Naja, kennst du einen anderen Weg HTTPS Requests zu sniffen?
-
Ui, da is der Hook aber doch einfacher

Also, ich seh grad das originale HttpSendRequest gibt ERROR_IO_PENDING zurück, was ja darauf schliesen lässt das die Internet Connection Asyncron ist und sie einfach
nicht sofort ihre Arbeit beenden konnte..
Normal wird da afaik ein Callback registriert der dann aufgerufen wird sobald sie fertig ist..
Nur wie kann ich das dann Hook-Technisch lösen?
mfg