
das Problem, dass ich den Curl-Befehl von der Chrome-Netzwerk-Registerkarte aus ausprobiert habe und es nicht funktioniert hat! Also habe ich nachgesehendie Seite html und fand heraus, dass es dies tut
1- Verschlüsseln Sie das Passwort mit sha256
2- dann base64 kodieren Sie den SHA256-Hash
3- Fügen Sie dann den Hash zur Herausforderung hinzu (den er von einer anderen Seite erhält)
4- dann sha 256 die Ausgabedieser Codezeilen
var dbpass = base64encode(SHA256(Password.value));
var realpass = dbpass + challange;
form.addParameter('Password', SHA256(realpass));
ich habe es Schritt für Schritt versucht und es funktioniert immer noch nicht! der curl-Befehl von Chrome ohne Reinigung
curl "http://192.168.1.1/index/login.cgi" -H "Connection: keep-alive" -H "Cache-Control: max-age=0" -H "Origin: http://192.168.1.1" -H "Upgrade-Insecure-Requests: 1" -H "DNT: 1" -H "Content-Type: application/x-www-form-urlencoded" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36" -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3" -H "Referer: http://192.168.1.1/html/index.asp" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: en-US,en;q=0.9,ar;q=0.8" -H "Cookie: Language=en; SessionID_R3=7EGmyRl6PcjZyCodTPl8zshYtbagRfUEIYm4njyVzkHAjoRgfeg8OLYerWewZlUwo5r4FeTPnsbRyB7eeCiVNf22aoU6E7eDAqAXc4w8iINkdt3srn3pdKYCDjvXmZw5; FirstMenu=Admin_0; SecondMenu=Admin_0_0; ThirdMenu=Admin_0_0_0" --data "Username=admin&Password=3bacd54fb595f90906feb6c68659c96bee5a2f4a594aea3fc50a56c306a04cb5&challange=IkYo7bcXU68FzOOzCPBg" --compressed --insecure
der Befehl, nachdem er ein wenig bereinigt wurde
curl "http://192.168.1.1/index/login.cgi" -H "Cookie: Language=en; FirstMenu=Admin_0; SecondMenu=Admin_0_0; ThirdMenu=Admin_0_0_0" --data "Username=user&Password=16e1c03a0075fa68ddca3398b5cd6342692cb9868b68a4c9c0a92b89311667a8&challange=KCoMUJ4u3SEf7bfDJ3o9"
ich habe SessionID_R3 daraus entfernt, da ich denke, dass es nicht notwendig ist, und habe den Befehl damit ausprobiert, aber es hat keinen Unterschied gemacht. eine erfolgreiche Verbindung in Wireshark
und die Registerkarte „Chrome-Netzwerk“
Antwort1
Die SessionID_R3 ist nicht zum Anmelden erforderlich, aber zum Anzeigen von Seiten, für die eine Authentifizierung erforderlich ist. Nach erfolgreicher Anmeldung wird Ihnen eine neue SessionID_R3 zugewiesen.
das Arbeitskommando
curl "http://192.168.1.1/index/login.cgi" -H "Cookie: Language=en" --data "Username=user&Password=16e1c03a0075fa68ddca3398b5cd6342692cb9868b68a4c9c0a92b89311667a8&challange=KCoMUJ4u3SEf7bfDJ3o9"
ich hätte die Cookies daraus entfernt, aber es ist erforderlich.
das Problem war zusätzlicher Platz im vierten Schritt, der zu einem falsch gehashten „Passwort+Challenge“ führte.