3 Replies Latest reply on May 9, 2011 3:25 PM by Jason Porter

    Seam 3 Remoting: ChangeSet Injection Attack

    Francisco Jose Peredo Noguez Master

      In Seam 3 docs I can read:



      Once you have finished making changes to the values in the model, you can apply them with the applyUpdates()
      method. This method scans all of the objects in the model, compares them with their original values and generates
      a delta which may contain one or more changesets to send to the server. A changeset is simply a list of property
      value changes for a single object.


      But I can not find anything to prevent a ChangeSetInjectionAttack:




      Instead of sending a valid object graph (changeset), the attacker can send a different object graph (changeset) representing alterations to the database that go well beyond his security level. For example, a remote object service  may receive an object graph that represent changes in the objects that represent new users, or new permissions granted to existing users of the system.


      What (if anything) is being planned in Seam 3 to deal with this kind of attacks? (or am I wrong to believe this kinds of attacks are possible?)

        • 1. Re: Seam 3 Remoting: ChangeSet Injection Attack
          Shane Bryzak Master

          Each model has a unique identifier, and the server maintains a reference to each object in the model, so there is no way an injection attack could make changes to other entities outside of the model (unless the initializer method provides access to them in the first place). 


          However with that being said, it would probably be prudent if we had a mechanism to prevent modification to certain object properties or object types, potentially something that's even tied in with the security API. 


          Francisco, could you please raise a JIRA issue with your concerns so that I don't forget to take a look at this?  You can use the new Seam Remoting project in JIRA:


          http://jira.jboss.org/jira/browse/SEAMREMOTING


          Thanks for bringing this up :)

          • 2. Re: Seam 3 Remoting: ChangeSet Injection Attack
            Epigmenio Martinez Newbie

            Bueno mi estimado amigo saludos,la cosa esta asi: La mayoria de la funcionalidad de seam si he logrado usar, pero me topo con un problema pues no recuerdo como configurarla despues de la primera que configuramos la herramienta, entonces estoy metidicimo en eso pues necesito pasar ese conocimiento a unos chavos nuevos, ya estamos desarrollando con el proyecto que dejaste, me gustaria disponer al algunos minutos de tu valioso tiempo y me hicieras un manualito de configuracion de seam desde cero.


            se que no te tomara mucho tiempo, pues dominas a la configuracion de la herramienta a la perfeccion.


            epigmeniomartinez@tabasco.gob.mx

            • 3. Re: Seam 3 Remoting: ChangeSet Injection Attack
              Jason Porter Master

              Epigmenio Martinez wrote on May 09, 2011 13:42:


              Bueno mi estimado amigo saludos,la cosa esta asi: La mayoria de la funcionalidad de seam si he logrado usar, pero me topo con un problema pues no recuerdo como configurarla despues de la primera que configuramos la herramienta, entonces estoy metidicimo en eso pues necesito pasar ese conocimiento a unos chavos nuevos, ya estamos desarrollando con el proyecto que dejaste, me gustaria disponer al algunos minutos de tu valioso tiempo y me hicieras un manualito de configuracion de seam desde cero.

              se que no te tomara mucho tiempo, pues dominas a la configuracion de la herramienta a la perfeccion.

              epigmeniomartinez@tabasco.gob.mx


              Estas buscando información con respecto a Seam Remoting, o otro projecto? Si es otro, por favor, empieza una otra tema. También, por favor, dinos la información mas especifica que es posible.