Proximus DSL volumemeter scripted uitlezen

Hebt u opmerkingen, klachten, steunbetuigingen voor Proximus (Belgacom)? Dan kan u deze hier kwijt.
Plaats reactie
Gebruikersavatar
meon
Administrator
Administrator
Berichten: 16757
Lid geworden op: 18 feb 2003, 22:02
Twitter: meon
Locatie: Bree
Uitgedeelde bedankjes: 582 keer
Bedankt: 780 keer
Provider

Ik wilde eens proberen of ik via PowerShell kon opvragen hoeveel volume gebruikt heb bij Proximus DSL.
Absoluut niet netjes, maar 't werkt (voor mij) wel :)
Het was wel wat uitzoeken omdat authenticatie via SAML 2.0 gaat.

Code: Selecteer alles

$step1 = Invoke-WebRequest "https://login.belgacom.be/EAIWeb/Login?ru=https%3A%2F%2Fadmit.belgacom.be%2Feservices%2Fwps%2Fmyportal%2FmyBillAndUsage&pv=fls&customcss=https%3A%2F%2Fwww.proximus.be%2Fresources%2Fcdn%2Flibs%2Frslib%2Fcss%2Flogin.css&lg=nl&nlg=true" -SessionVariable bgc

$step2 = Invoke-WebRequest "https://login.belgacom.be/EAIWeb/mbp/loginFlow?execution=e1s1" -WebSession $bgc
$step2.Forms[0].Fields.'loginForm:userName' = "myusername"
$step2.Forms[0].Fields.'loginForm:password' = "mypassword"

$step3 = Invoke-WebRequest ('https://login.belgacom.be' + $step2.Forms[0].Action) -WebSession $bgc -Body $step2 -Method Post

$step4 = Invoke-WebRequest "https://admit.belgacom.be/fim/sps/sp-saml-intern/saml20/login" -Body $step3 -WebSession $bgc -Method Post

$step5 = Invoke-WebRequest "https://admit.belgacom.be/eservices/wps/myportal/myBillAndUsage" -WebSession $bgc
echo ($step5.AllElements | ? {$_.TagName -eq "p"})[1].innerText
Het enige wat me stoort is dat de browser op bepaald moment opent en ik weet niet waarom :?
Gebruikersavatar
Splitter
Elite Poster
Elite Poster
Berichten: 5896
Lid geworden op: 10 maa 2010, 12:30
Uitgedeelde bedankjes: 68 keer
Bedankt: 605 keer
Recent bedankt: 3 keer
Te Koop forum

hmm, das best eigenlijk wel iets handigs...
gaat dit ook voor bv het saldo van de openstaande facturen te raadplegen?

kga zo is iets proberen in php denk ik... das meer mijn taal :)
Gebruikersavatar
meon
Administrator
Administrator
Berichten: 16757
Lid geworden op: 18 feb 2003, 22:02
Twitter: meon
Locatie: Bree
Uitgedeelde bedankjes: 582 keer
Bedankt: 780 keer
Provider

Ge kunt alles lezen of doen :-). Dit was gewoon een testje of het kòn.
Je zegt nu php, maar als je zo iets wilt doen zal dat via cURL moeten. Ik weet wel zeker dat dat complexer gaat zijn dan powershell :-).
Ik was ook een php-mens, maar powershell is zooo krachtig/simpel... In theorie zou je nu zelfs automatisch een volume pack kunnen bestellen als je volume bijna op is. Kwestie van dat dan te schedulen en tadaa :-D.
Gebruikersavatar
fryelectro
Elite Poster
Elite Poster
Berichten: 1879
Lid geworden op: 14 dec 2005, 11:58
Locatie: 03BOO0
Uitgedeelde bedankjes: 367 keer
Bedankt: 174 keer
Provider

Schrijf zo'n scriptje eens voor ons meon:wink:
Edpnet VDSL XL - 100/35 Fritz!Box 7530
Orange Go Extreme
jackho
Elite Poster
Elite Poster
Berichten: 4331
Lid geworden op: 05 jun 2011, 21:00
Uitgedeelde bedankjes: 112 keer
Bedankt: 279 keer

Hoe ga je juist te werk met die code, Als je powershell opent, moet je dan die code gewoon hierin kopiëren of moet je anders te werk gaan? Als ik die daarin kopieer en op enter druk gebeurt er niks bij mij :oops:
Gebruikersavatar
meon
Administrator
Administrator
Berichten: 16757
Lid geworden op: 18 feb 2003, 22:02
Twitter: meon
Locatie: Bree
Uitgedeelde bedankjes: 582 keer
Bedankt: 780 keer
Provider

- Copy/paste het in een tekst-file die je bijvoorbeeld 'proximusvolume.ps1' noemt
- pas jouw username/password aan
- en dan in powershell 3.0 (of hoger, niet cmd.exe!) voer je het script uit door er naar te navigeren (cd folder) en dan ". .\proximus.ps1", dus puntje, spatie, puntje, backslash, scriptnaam.ps1
Afbeelding
px-powershell.png
(11.69 KiB) Nog niet gedownload
Gebruikersavatar
JoskeVermeulen
Premium Member
Premium Member
Berichten: 701
Lid geworden op: 22 aug 2012, 02:04
Locatie: Liedekerke
Uitgedeelde bedankjes: 83 keer
Bedankt: 114 keer
Provider

@meon: Bij mij opent het iedere keer Chrome naar /saml20/login url maar powershell retourneert wel de juiste data (via rechterklik runnen op opgeslagen script).

@jackho: als je powershell verschijnt en na 1 seconde weer verdwijnt moet je eens Set-ExecutionPolicy RemoteSigned uitvoeren (als admin).

Voor die facturen heb ik het eens geprobeerd maar die worden dynamisch ingeladen adhv een module na een aantal seconden dus veel verder geraak ik al niet. :lol:
:troosten:
TV: Afbeelding
ISP: Afbeelding
Tel.: Afbeelding
jackho
Elite Poster
Elite Poster
Berichten: 4331
Lid geworden op: 05 jun 2011, 21:00
Uitgedeelde bedankjes: 112 keer
Bedankt: 279 keer

@meon ik krijg het volgende als ik je procedure volg:

Code: Selecteer alles

At C:\Users\username\desktop\PxVolume.ps1:1 char:141
+ ... it.belgacom.be%2Feservices%2Fwps%2Fmyportal%2FmyBillAndUsage&pv=fls&c ...
+                                                                 ~
The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it
 as part of a string.
At C:\Users\username\desktop\PxVolume.ps1:1 char:148
+ ... acom.be%2Feservices%2Fwps%2Fmyportal%2FmyBillAndUsage&pv=fls&customcs ...
+                                                                 ~
The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it
 as part of a string.
At C:\Users\username\desktop\PxVolume.ps1:1 char:239
+ ... oximus.be%2Fresources%2Fcdn%2Flibs%2Frslib%2Fcss%2Flogin.css&lg=nl&nl ...
+                                                                 ~
The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it
 as part of a string.
At C:\Users\username\desktop\PxVolume.ps1:1 char:245
+ ... .be%2Fresources%2Fcdn%2Flibs%2Frslib%2Fcss%2Flogin.css&lg=nl&nlg=true ...
+                                                                 ~
The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it
 as part of a string.
At C:\Users\username\desktop\PxVolume.ps1:12 char:28
+ echo ($step5.AllElements   {$_.TagName -eq p})[1].innerText
+                            ~
Unexpected token '{' in expression or statement.
At C:\Users\username\desktop\PxVolume.ps1:12 char:25
+ echo ($step5.AllElements   {$_.TagName -eq p})[1].innerText
+                         ~
Missing closing ')' in expression.
At C:\Users\username\desktop\PxVolume.ps1:12 char:43
+ echo ($step5.AllElements   {$_.TagName -eq p})[1].innerText
+                                           ~
You must provide a value expression following the '-eq' operator.
At C:\Users\username\desktop\PxVolume.ps1:12 char:44
+ echo ($step5.AllElements   {$_.TagName -eq p})[1].innerText
+                                            ~
Unexpected token 'p' in expression or statement.
At C:\Users\username\desktop\PxVolume.ps1:12 char:46
+ echo ($step5.AllElements   {$_.TagName -eq p})[1].innerText
+                                              ~
Unexpected token ')' in expression or statement.
At C:\Users\username\desktop\PxVolume.ps1:12 char:48
+ echo ($step5.AllElements   {$_.TagName -eq p})[1].innerText
+                                                ~
Missing type name after '['.
    + CategoryInfo          : ParserError: (:) [], ParseException
    + FullyQualifiedErrorId : AmpersandNotAllowed
Laatst gewijzigd door jackho 02 sep 2016, 15:09, in totaal 1 gewijzigd.
gm123
Elite Poster
Elite Poster
Berichten: 1113
Lid geworden op: 08 maa 2009, 22:27
Uitgedeelde bedankjes: 63 keer
Bedankt: 116 keer

Waar is de tijd dat we daar nog zo'n desktop programmatje voor hadden. Ben de naam kwijt, het kon overweg met alle DSL providers en telenet, gewoon je inloggegevens invullen en je kreeg mooi je verbruik te zien. Dat programma was onmisbaar in de tijd van limieten van 4GB. :-)

Hmm, dit hoort misschien eerder in het nostalgie topic. :lol:
Dettie
Premium Member
Premium Member
Berichten: 573
Lid geworden op: 27 aug 2006, 13:17
Locatie: Poperinge
Uitgedeelde bedankjes: 38 keer
Bedankt: 68 keer

isp monitor ? ;)
Sinister
Premium Member
Premium Member
Berichten: 584
Lid geworden op: 30 jun 2015, 10:49
Uitgedeelde bedankjes: 16 keer
Bedankt: 39 keer

Ideaal om brute force te hacken zo een scriptje wel.
Gebruikersavatar
meon
Administrator
Administrator
Berichten: 16757
Lid geworden op: 18 feb 2003, 22:02
Twitter: meon
Locatie: Bree
Uitgedeelde bedankjes: 582 keer
Bedankt: 780 keer
Provider

De login-page heeft een lockout na een aantal foute pogingen, dus veel te brute-forcen is er niet...
Op basis van de URL's en de SAML assertion lijkt het er op dat alles via Forefront Identity Manager wordt gehaald.
Sinister
Premium Member
Premium Member
Berichten: 584
Lid geworden op: 30 jun 2015, 10:49
Uitgedeelde bedankjes: 16 keer
Bedankt: 39 keer

Een tijdelijke lockout ja :)
Plaats reactie

Terug naar “Proximus (Belgacom, Skynet)”