Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] Comunicare con pagina PHP
Forum - C# / VB.NET - [C#] Comunicare con pagina PHP

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Jie (Normal User)
Newbie


Messaggi: 4
Iscritto: 25/08/2014

Segnala al moderatore
Postato alle 17:10
Lunedì, 25/08/2014
Questo topic è stato chiuso dal moderatore

Ciao a tutti, sto scrivendo un programma che si collega al sito https://web.spaggiari.eu/home/app/default/login.php?mode=badge e inserisce automaticamente quanto digitato nel textbox, simulando il passaggio del badge.

Finora ho scritto questo codice, che però non è in grado di dirmi se la sequenza digitata sia stata accettata o meno:

Codice sorgente - presumibilmente C#

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.IO;
  11. using System.Net;
  12.  
  13. namespace WindowsFormsApplication1
  14. {
  15.     public partial class Form1 : Form
  16.     {
  17.         private bool InfoSchoolAccess(string badge_ident)
  18.         {
  19.            
  20.             CookieContainer cookies = new CookieContainer();
  21.             HttpWebRequest request = null;
  22.             HttpWebResponse response = null;
  23.             string returnData = string.Empty;
  24.  
  25.             //Need to retrieve cookies first
  26.             request = (HttpWebRequest)WebRequest.Create(new Uri("https://web.spaggiari.eu/home/app/default/login.php?mode=badge"));
  27.             request.Method = "GET";
  28.             request.CookieContainer = cookies;
  29.             response = (HttpWebResponse)request.GetResponse();
  30.  
  31.             //Set up the request
  32.             request = (HttpWebRequest)WebRequest.Create(new Uri("https://web.spaggiari.eu/home/app/default/login.php?mode=badge"));
  33.             request.Method = "POST";
  34.             request.ContentType = "application/x-www-form-urlencoded";
  35.             request.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13";
  36.             request.Referer = "https://web.spaggiari.eu/home/app/default/login.php?&mode=badge";
  37.             request.AllowAutoRedirect = true;
  38.             request.KeepAlive = true;
  39.             request.CookieContainer = cookies;
  40.  
  41.             //Format the POST data
  42.             StringBuilder postData = new StringBuilder();
  43.             postData.Append(String.Format("badge_ident={0}", badge_ident));
  44.  
  45.  
  46.             //write the POST data to the stream
  47.             using (StreamWriter writer = new StreamWriter(request.GetRequestStream()))
  48.                 writer.Write(postData.ToString());
  49.  
  50.             response = (HttpWebResponse)request.GetResponse();
  51.  
  52.             //Read the web page (HTML) that we retrieve after sending the request
  53.             using (StreamReader reader = new StreamReader(response.GetResponseStream()))
  54.                 returnData = reader.ReadToEnd();
  55.             richTextBox1.AppendText(returnData);
  56.  
  57.             return !returnData.Contains("Errore");
  58.         }
  59.         public Form1()
  60.         {
  61.             InitializeComponent();
  62.         }
  63.  
  64.         private void button1_Click(object sender, EventArgs e)
  65.         {
  66.             InfoSchoolAccess(textBox1.Text);
  67.         }
  68.  
  69.         private void richTextBox1_TextChanged(object sender, EventArgs e)
  70.         {
  71.  
  72.         }
  73.  
  74.     }
  75. }



Qualcuno potrebbe illuminarmi?

Ultima modifica effettuata da Jie il 25/08/2014 alle 17:12


Due cose riempiono l’animo di ammirazione e venerazione sempre nuova e crescente, quanto piú spesso e piú a lungo la riflessione si occupa di esse: il cielo stellato sopra di me, e la legge morale in me.

Kant, Critica della ragion pratica, Conclusione
PM
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1451
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 18:01
Lunedì, 25/08/2014
Quel codice non lo hai scritto tu, è evidentissimo. Se lo avessi scritto tu sapresti che:
1) la risposta la hai già ottenuta
2) come fare per stamparla a video (sotto forma di testo o pagina web)
3) come fare per verificare se è apparso un errore

INOLTRE: non sono sicuro che quello che stai cercando di fare sia a fini leciti, quindi non ti aiuterò finchè non mi avrai detto: dove hai preso il codice, cosa ci vuoi fare e cosa sai fare

Ultima modifica effettuata da TheDarkJuster il 25/08/2014 alle 18:06
PM
Avatar
dnha (Member)
Pro


Messaggi: 137
Iscritto: 24/07/2014

Segnala al moderatore
Postato alle 18:56
Lunedì, 25/08/2014
Testo quotato

Postato originariamente da TheDarkJuster:

Quel codice non lo hai scritto tu, è evidentissimo. Se lo avessi scritto tu sapresti che:
1) la risposta la hai già ottenuta
2) come fare per stamparla a video (sotto forma di testo o pagina web)
3) come fare per verificare se è apparso un errore

INOLTRE: non sono sicuro che quello che stai cercando di fare sia a fini leciti, quindi non ti aiuterò finchè non mi avrai detto: dove hai preso il codice, cosa ci vuoi fare e cosa sai fare



Esatto...
Secondo me vuole tentare un BruteForce su quella pagina... Spero di essermi sbagliato :nono:


“La principale differenza tra una cosa che potrebbe rompersi e una cosa che non può in alcun modo rompersi è che quando una cosa che non può in alcun modo rompere si rompe, di solito risulta impossibile da riparare.” [Douglas Adams, Praticamente innocuo]
PM
Avatar
Jie (Normal User)
Newbie


Messaggi: 4
Iscritto: 25/08/2014

Segnala al moderatore
Postato alle 20:18
Lunedì, 25/08/2014
Testo quotato

Postato originariamente da TheDarkJuster:

Quel codice non lo hai scritto tu, è evidentissimo. Se lo avessi scritto tu sapresti che:
1) la risposta la hai già ottenuta
2) come fare per stamparla a video (sotto forma di testo o pagina web)
3) come fare per verificare se è apparso un errore

INOLTRE: non sono sicuro che quello che stai cercando di fare sia a fini leciti, quindi non ti aiuterò finchè non mi avrai detto: dove hai preso il codice, cosa ci vuoi fare e cosa sai fare



Testo quotato

Postato originariamente da dnha:

Testo quotato

Postato originariamente da TheDarkJuster:

Quel codice non lo hai scritto tu, è evidentissimo. Se lo avessi scritto tu sapresti che:
1) la risposta la hai già ottenuta
2) come fare per stamparla a video (sotto forma di testo o pagina web)
3) come fare per verificare se è apparso un errore

INOLTRE: non sono sicuro che quello che stai cercando di fare sia a fini leciti, quindi non ti aiuterò finchè non mi avrai detto: dove hai preso il codice, cosa ci vuoi fare e cosa sai fare



Esatto...
Secondo me vuole tentare un BruteForce su quella pagina... Spero di essermi sbagliato :nono:



Fermi tutti! Mi sa che il primo post è stato un po' troppo ermetico :rofl:

Innanzittutto lo faccio per pura curiosità, poi se funziona lo porto su WP8 per evitare di perdere ogni giorno mezz'ora davanti al totem (magari quando sono già le 8.15 passate).
Non avrebbe senso tentare un brute force per trovare codici validi, perché servono solo per segnalare la presenza degli studenti mentre quelli degli insegnanti sono protetti da PIN, come potrà confermare TheDarkJuster visto che è di Padova.

Detto questo, parte del codice l'ho trovato qui: http://stackoverflow.com/questions/14000185/how-to-interac ...
L'output fornito da StreamReader è semplicemente il codice HTML della pagina di accesso senza specificare se il codice sia valido o meno, mentre da browser l'indicazione viene data da uno script JS


Jie ha allegato un file: 1.PNG (35369 bytes)
Clicca qui per guardare l'immagine

Ultima modifica effettuata da Jie il 25/08/2014 alle 20:20


Due cose riempiono l’animo di ammirazione e venerazione sempre nuova e crescente, quanto piú spesso e piú a lungo la riflessione si occupa di esse: il cielo stellato sopra di me, e la legge morale in me.

Kant, Critica della ragion pratica, Conclusione
PM
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1451
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 20:25
Lunedì, 25/08/2014
poi se funziona lo porto su WP8 per evitare di perdere ogni giorno mezz'ora davanti al totem (magari quando sono già le 8.15 passate).

E' illegale, non ti aiuto.

PM
Avatar
dnha (Member)
Pro


Messaggi: 137
Iscritto: 24/07/2014

Segnala al moderatore
Postato alle 20:48
Lunedì, 25/08/2014
Testo quotato

Postato originariamente da TheDarkJuster:
E' illegale, non ti aiuto.


Ha ragione TheDarkJuster, neanche io voglio collaborare :pat: .
(Comunque la soluzione è molto semplice... cerca su google)


“La principale differenza tra una cosa che potrebbe rompersi e una cosa che non può in alcun modo rompersi è che quando una cosa che non può in alcun modo rompere si rompe, di solito risulta impossibile da riparare.” [Douglas Adams, Praticamente innocuo]
PM
Avatar
Jie (Normal User)
Newbie


Messaggi: 4
Iscritto: 25/08/2014

Segnala al moderatore
Postato alle 20:48
Lunedì, 25/08/2014
Tutto può essere usato a fin di bene così come anche per nuocere, ma da qui ad essere vietato categoricamente per legge ne passa di acqua sotto i ponti :yup:

Comunque vi prego di chiudere il thread se ritenete che vada contro il regolamento.


Due cose riempiono l’animo di ammirazione e venerazione sempre nuova e crescente, quanto piú spesso e piú a lungo la riflessione si occupa di esse: il cielo stellato sopra di me, e la legge morale in me.

Kant, Critica della ragion pratica, Conclusione
PM
Avatar
dnha (Member)
Pro


Messaggi: 137
Iscritto: 24/07/2014

Segnala al moderatore
Postato alle 20:56
Lunedì, 25/08/2014
Non intendevo questo... Credi che sia difficile effettuare un BruteForce anche sul PIN?


“La principale differenza tra una cosa che potrebbe rompersi e una cosa che non può in alcun modo rompersi è che quando una cosa che non può in alcun modo rompere si rompe, di solito risulta impossibile da riparare.” [Douglas Adams, Praticamente innocuo]
PM
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1451
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 21:04
Lunedì, 25/08/2014
Codice sorgente - presumibilmente Plain Text

  1. per evitare di perdere ogni giorno mezz'ora davanti al totem



Quel registro online ha valore giuridico, lo sai vero? Se lì c'è scritto che sei entrato alle 8:10 e alle 8:10 non eri davantial  totem a passare il badge hai commesso un reato.

E' come se tu scrivessi il falso sul vecchio registro di classe (quello rosso che resta sulla cattedra per intenderci).

Ultima modifica effettuata da TheDarkJuster il 25/08/2014 alle 21:06
PM
Pagine: [ 1 2 ] Precedente | Prossimo