Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Mar 27 11:09
    LieuweJS commented #65
  • Mar 27 11:08
    RubenJ01 commented #65
  • Mar 27 11:07
    RubenJ01 opened #65
  • Jan 11 14:58
    MakerTim commented #64
  • Jan 11 14:20
    CasperBr commented #64
  • Jan 11 13:41
    MakerTim edited #64
  • Jan 11 13:41
    MakerTim opened #64
  • Dec 20 2018 20:05
    aredshaw commented #55
  • Nov 19 2018 18:46
    thomaspj10 opened #63
  • Sep 26 2018 10:30

    Stanvk on master

    Updated magister version support (compare)

  • Sep 22 2018 13:29
    Stanvk commented #58
  • Sep 22 2018 11:26
    Stanvk commented #58
  • Sep 22 2018 11:23

    Stanvk on master

    Update .gitignore (compare)

  • Sep 22 2018 11:15

    Kickwood on master

    Updated For New Format And Fixe… (compare)

  • Sep 22 2018 11:14

    Kickwood on master

    Updated Appointments For New Fo… (compare)

  • Sep 22 2018 11:05
    Kickwood closed #59
  • Sep 22 2018 11:05
    Kickwood commented #59
  • Sep 22 2018 11:04
    Stanvk commented #58
  • Sep 22 2018 11:02
    Stanvk commented #58
  • Sep 22 2018 11:01
    Stanvk commented #58
Jules
@julespalles
@scheelings hoe zou je dat dynamisch parsen aanpakken? Als ik de JavaScript run in een webconsole zie ik nergens de authCode value verschijnen
Danny Scheelings
@scheelings
@julespalles Ja, daar ben ik nog over aan het nadenken... vandaar dat ik aan het Googlen was geslagen en hier terecht kwam.
@Sj3rd is ook... hopen dat die code gewoon heel lang mee gaat ;-)
Sj3rd
@Sj3rd
Ze hebben al eerder een gekke API key toegevoegd, die nu al een half jaar lang t zelfde is geloof k
Dit is weer een poging tot denk ik
Jules
@julespalles
Jaa waarschijnlijk is het dat, maar @Sj3rd heb jij een werkend prototype van het dynamisch bepalen van de authCode?
Sj3rd
@Sj3rd
Haha als k thuis ben zal ik even kijken of ik hem ergens kan vinden, maar geloof dat t met precies dezelfde manier ging als met die andere API key
Die code staat namelijk ergens in de js van de login pagina, en die kan je gewoon met een het request halen en dan opzoeken naar die code :)
Jules
@julespalles
Ja in theorie is het vrij makkelijk, maar die authCode vars zijn wel encapsulated en Magister heeft het JS bestand ook nog eens door een obfuscator gehaald. De authCode string kan je daardoor niet als 1 geheel vinden in het bestand (zie post van @scheelings)
Sj3rd
@Sj3rd
Haha in theorie ja...
Ik snap niet echt dat ze zo moeilijk doen, het is makkelijker om gewoon api keys oid weg te geven aan mensen die ze normaal gebruiken
Sj3rd
@Sj3rd
fucker de fuck, de code veranderd wel dus...
hij is nu c39f6a
Jules
@julespalles
Aah damnit...
Nog gelukt met het dynamisch bepalen gisteren?
Sj3rd
@Sj3rd
nah ga straks ff kijken, heb weer een shitload aan tussenuren
Jules
@julespalles
Oke nice! Ik zit de hele dag op college dus kan weinig doen nu
Sj3rd
@Sj3rd
Ze hebben een enorm js bestand, die de code bepaalt, ik zie namelijk allemaal losse stukjes code, waaronder de stukjes c39f en een stukje 6a
en goede nieuws eraan, is dat de variabelen waar ze genoemd worden M en I zijn, wat dezelfde zijn als bij de vorige langere code (zoals @scheelings had ontdekt)
Danny Scheelings
@scheelings
Ik werk zelf aan een programma in C# en doe nu het volgende:
  • HTTP request naar https://accounts.magister.net/js/account.js
  • Regex op de content los laten voor de variable M: M="([^"]*)",
  • Regex op de content los laten voor de variable I: I="([^"]*)",
  • Inhoud tussen de aanhalingstekens aan elkaar plakken en je hebt de authCode
    Deze regex zou je ook in javascript toe moeten kunnen passen, dus dit idee zouden jullie ook kunnen gebruiken
Sj3rd
@Sj3rd
Alleen volgensmij is de volgorde steeds anders van I en M
En ben bang dat er ook nog een D en een R var in komen
Danny Scheelings
@scheelings
@Sj3rd damn... je hebt gelijk... gisteren was het n[P[0]] = (t = [D, I, M, R], ["2", "1"] en nu is het n[P[0]] = (t = [D, I, M, R], ["1", "2"]
Sj3rd
@Sj3rd
helaas wel ja...
Maar de volgorde zou ook afgelezen kunnen worden uit het js bestand
En anders is de enige optie om alle 16 volgordes elke keer te proberen en ergens op te slaan welke de juiste is
Danny Scheelings
@scheelings
tja, ik denk dat ik dan de 4 variabelen (D, I, M, R) maar ga uitlezen en dan inderdaad de volgorde ["2", "1"]. Vraag is natuurlijk hoe lang dit dan weer overeind blijft.
Danny Scheelings
@scheelings
Voor als jullie het willen hebben: de regex om die functie call in het javascript bestand te bepalen is: return n[P[0]](.*).map
Sj3rd
@Sj3rd
De volgorde is toch ook uit de code te halen?
Danny Scheelings
@scheelings
ja... deze regex geeft return n[P[0]]=(t=[D,I,M,R],["1","2"].map terug... dan kan je 1 en 2 dus gebruiken om de volgorde te bepalen.
Sj3rd
@Sj3rd
Oh zo
Sj3rd
@Sj3rd
die wordt nu nog elke nacht, maar binnenkort waarschijnlijk elke 2 uur geupdate, doormiddel van een headless browser :) die de requests bijhoud via https://github.com/GoogleChrome/puppeteer/blob/v1.11.0/docs/api.md#event-request
Jules
@julespalles
Wow nice, bedankt!
Sj3rd
@Sj3rd
oja en hier nog een lijstje met alle scholen: https://gist.github.com/7kasper/a0bb6d820b66fde278016f199963de64
en nu is @7kasper 's vps waarschijnlijk geblokt
Danny Scheelings
@scheelings
Hoi @Sj3rd ik was wat berichten aan het teruglezen en zie dat jij ook gebruik maakt van een JS API van Iddink. Waar kan ik die terugvinden?
Sj3rd
@Sj3rd
Er is geen officiële js API, maar idiink (niet te verwarren met Iddink) heeft wel een js API gemaakt. Die is een tijdje geleden stop gezet, en hij is doorgegaan met magister.js, een completere API. Hier een linkje naar MagisterJS: A JavaScript implementation of the Magister 6 API.
Danny Scheelings
@scheelings
@Sj3rd aha, OK. Thx!
MrDragonPlays
@MrDragonPlays_twitter
Hallo, ik probeer een lijst met cijfers te krijgen, ik heb de x-api-client-id al geregeld, ik krijg nu een {"fouttype":"OngeldigeSessieStatus","omschrijving":null}, wat moet je naar de magister.net/api/sessies POSTen om dit op te lossen?
Sj3rd
@Sj3rd
Deze api is volgens mij nog steeds outdated...
Danny Scheelings
@scheelings
De authCode is weer veranderd en https://accounts.magister.net/js/account.js bestaat niet meer. Volgens mij is dat nu: https://accounts.magister.net/js/account-90afb1415bb5b4a8.js. Dus hebben ze de naam van dit bestand ook alweer dynamisch gemaakt. Hebben ze daar niets anders te doen bij Magister... ;-)
Jules
@julespalles
Hahah ja vraag me ook af waarvoor ze deze moeite doen... Voor een headless browser maakt al die obfuscation toch niet uit
Sj3rd
@Sj3rd
Als t goed is zou https://raw.githubusercontent.com/simplyGits/magisterjs-authcode/master/code.json dan dus binnenkort ook updaten, omdat die een headlessbrowser gebruikt
Jules
@julespalles
De authCode is nu alweer veranderd (binnen anderhalf uur, van 86c621a0d6 naar 4a4d364a4d36). Voor een betrouwbare authCode kan je dus beter implementeren dat de authCode door de inloggende gebruiker opgehaald/upgedate wordt, in plaats van de huidige oplossing...
Sj3rd
@Sj3rd
Heeft er iemand een lijstje met alle infoTypes en betekenissen?
ImranDoet
@ImranDoet
ziet er naar uit dat ze onnodig veel moeite doen
jammer
Sj3rd
@Sj3rd
Maar een officiële API maken, of iets met oauth doen ze niet...
Ohja er is wel n officiële API