Toon posts:

Paypal security leak?

Pagina: 1
Acties:

  • NeFoRcE
  • Registratie: Mei 2004
  • Laatst online: 01-06 15:50

NeFoRcE

Hallo? Bent u daar?

Topicstarter
Heren,

Volgens mij zit er een security leak in het systeem van paypal.

In onderstaande flow is namelijk het volgende mogelijk:



In de stap waarbij 'DoExpressCheckoutPayment' wordt aangeroepen is het voor de developer nog mogelijk om het af te boeken bedrag te wijzigen. Wanneer er een order aangemaakt van bijv 20 euro, je klikt op paypal betaling, logged in, en ziet het bedrag van 20 euro staan en je klikt op doorgaan, is het mogelijk om daarna bijv X euro af te boeken. De gebruiker zal na het klikken op doorgaan dit niet zien en direct worden doorgeleid naar de website.

Vervolgens moet je als eindgebruiker maar via mail/paypal transactieoverzicht er achter komen wat er daadwerkelijk is afgeboekt.

Am i right?

[Voor 1% gewijzigd door NMe op 25-06-2015 12:09]

Professioneel Heftruck Syndroom


  • SinergyX
  • Registratie: November 2001
  • Laatst online: 02:13

SinergyX

____(>^^(>0o)>____

Nee, dan heb je namelijk een invalid token bij confirmation die je bij CheckoutDetails moet opgeven, waarmee je enkel jezelf zal hebben als PayPal deze afwijking ziet :P

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


  • D4NG3R
  • Registratie: Juli 2009
  • Laatst online: 11:36
Als jij van een site naar de paypal api gaat word al een bedrag mee gestuurd, vanaf dat moment kan de site waar je vandaan komt helemaal niks meer doen totdat het proces voltooid of geannuleerd is.

Dus nee. Dat kan niet.

Komt d'r in, dan kö-j d’r oet kieken


  • Patrock
  • Registratie: Augustus 2011
  • Laatst online: 02-06 16:36

Patrock

Eat - ride - sleep - repeat

Bij call SetExpressCheckout worden de details ingevoerd. in de volgende stappen worden deze waarden die bekend zijn getoond (get express checkout details) Hierbij kunnen details niet worden aangepast aan de bestelling. en worden de gegevens terug gestuurd naar de merchant. Deze kan nu alleen zeggen bij DoExpressCheckout order id xxx status merchant = approved action = process waarbij jij als klant op paypal hebt aangegeven van ik ben akkoord. De Api geeft vervolgens terug of action voltooid is of een error heeft. indien voltooid krijg jij de confirmation.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-05 17:03

NMe

Quia Ego Sic Dico.

En daarom haal ik ook de members only-tag uit de topicstart weg. Van lege topics voor niet-ingelogde mensen wordt niemand vrolijk en je beschermt PayPal er niet mee omdat je aanname niet klopt. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Releases
  • Registratie: Maart 2009
  • Laatst online: 01-06 20:40

Releases

Ja maar!

Opzich is zijn redenatie niet gek, dit was namelijk wel degelijk mogelijk geweest in het verleden. Kwam door buggy software met api op sommige webshops.

  • Katerin
  • Registratie: Februari 2010
  • Laatst online: 18-05 16:52
Ik snap wel waar je vandaan komt bij de snelle checkout.
Dat je na het paypal proces je nog de verzendkosten of andere opties moet kiezen en dan pas afronden. ?

  • Mavamaarten
  • Registratie: September 2009
  • Laatst online: 02-06 16:22

Mavamaarten

Omdat het kan!

Releases schreef op donderdag 25 juni 2015 @ 12:15:
Opzich is zijn redenatie niet gek, dit was namelijk wel degelijk mogelijk geweest in het verleden. Kwam door buggy software met api op sommige webshops.
Dat is dan een fout in de implementatie van hun webshop, geen fout in de Paypal API ;)

Ik heb zelf ook wel eens een paar gamekeys voor $0,01 besteld omdat een brak opgezette webshop de bedragen gewoon als form-data meestuurde.

Android developer & dürüm-liefhebber


  • Patrock
  • Registratie: Augustus 2011
  • Laatst online: 02-06 16:36

Patrock

Eat - ride - sleep - repeat

Op de volgende pagina kun je alle argumenten waar de API mee overweg kan vinden.
https://developer.paypal....ayment_API_Operation_NVP/

Hieruit valt bij elke manipuleerbare data op te maken dat er een check inzit naar de informatie die in eerste instantie is verstuurd naar paypal, en de gegevens die de klant vervolgens zelf heeft kunnen controleren. en akkoord op gegeven. wijkt dit af, dan zal de betaling niet verwerkt worden.

Als je naar meer fouten wilt zoeken in producten is de documentatie van de API de plek om te zoeken, aan de hand van de stroomschema's kun je wel leuke ideén opdoen waar je wilt zoeken :)

Wil je het proces echt ontleden moet je de verschillende api calls uit het stroomschema naast elkaar gaan leggen.

  • NeFoRcE
  • Registratie: Mei 2004
  • Laatst online: 01-06 15:50

NeFoRcE

Hallo? Bent u daar?

Topicstarter
Thanks voor alle feedback. Echter is het mij zojuist toch echt gelukt om mijzelf 2 cent weer te geven in de pagina waarbij je moet klikken op 'doorgaan' en dat er in het 'DoExpressCheckoutPayment' proces, 5 cent wordt afgeboekt.

Het enige wat ik dus zie is dat er 2 cent afgeboekt zal worden, en in mijn transactieoverzicht op paypal staat toch echt 5 cent afgeboekt.

Professioneel Heftruck Syndroom


  • SinergyX
  • Registratie: November 2001
  • Laatst online: 02:13

SinergyX

____(>^^(>0o)>____

'doorgaan'? Bedoel je dan na inlog en akkoord op de site van PayPal?

Ik neem aan dat jij dat PAYMENTREQUEST_0_AMT aanpast?

Lijkt me nog zeer onwaarschijnlijk (of je speelt met shipping/taxes), wat weer niet werkt bij digitale goederen, maar leg het eens voor bij PayPal, kijken wat die te vertellen hebben.
Mavamaarten schreef op donderdag 25 juni 2015 @ 12:18:

Dat is dan een fout in de implementatie van hun webshop, geen fout in de Paypal API ;)

Ik heb zelf ook wel eens een paar gamekeys voor $0,01 besteld omdat een brak opgezette webshop de bedragen gewoon als form-data meestuurde.
En er staat gewoon in die handleiding (en php voorbeelden) dat je nooit direct forms moet inlezen maar ze via dbase te laten lopen :P

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


  • NeFoRcE
  • Registratie: Mei 2004
  • Laatst online: 01-06 15:50

NeFoRcE

Hallo? Bent u daar?

Topicstarter
Ik zie het bedrag van 2 cent op het scherm nadat ik inderdaad ingelogd ben (maar ben standaard ingelogd) dus zie direct het bedrag. Klik ik op doorgaan, dan verloopt er een proces, en zonder interactie wordt ik doorverwezen naar de website weer. Ik denk dat er 2 cent is afgeboekt, en toch is er X afgeschreven. Dit alles op een testsite van mij. Enige wat aangepast wordt in dat laatste niet-zichtbare proces is de waarde naar deze functie:

function ConfirmPayment( $FinalPaymentAmt )

En als ik dat zie heb je inderdaad gelijk, de waarde van PAYMENTREQUEST_0_AMT wordt daarbij aangepast.

Elke webdevver zou dit kunnen doen. Dat lijkt mij toch niet echt chill?

Professioneel Heftruck Syndroom


  • NimRod1337
  • Registratie: November 2002
  • Laatst online: 01-06 23:45
Echt?, geen dames hier aanwezig denk je?

  • SinergyX
  • Registratie: November 2001
  • Laatst online: 02:13

SinergyX

____(>^^(>0o)>____

NeFoRcE schreef op donderdag 25 juni 2015 @ 12:51:
Elke webdevver zou dit kunnen doen. Dat lijkt mij toch niet echt chill?
Daarom zeg ik, in de basis kan dit niet door de token (die je krijgt bij opbouw van de totaalprijs), uitzondering is gebruik maken van shipping/taxes, was het op zo'n simpele schaal mogelijk, was het natuurlijk al lang bekend.

Maar nogmaals, leg het gewoon bij PayPal neer, mogelijk dat je testcase niet goed is, zij zien ook wat er aan hun kant gebeurd.

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


  • Katerin
  • Registratie: Februari 2010
  • Laatst online: 18-05 16:52
NimRod1337 schreef op donderdag 25 juni 2015 @ 13:07:
[...]

Echt?, geen dames hier aanwezig denk je?
Och ik ga wel door voor heer hoor als het moet :D
SinergyX schreef op donderdag 25 juni 2015 @ 13:13:
[...]

Daarom zeg ik, in de basis kan dit niet door de token (die je krijgt bij opbouw van de totaalprijs), uitzondering is gebruik maken van shipping/taxes, was het op zo'n simpele schaal mogelijk, was het natuurlijk al lang bekend.
Dit dus
Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee