<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, May 22, 2013 at 12:13 AM, Bruno Oliveira <span dir="ltr">&lt;<a href="mailto:bruno@abstractj.org" target="_blank">bruno@abstractj.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Is it a priority? If yes, please file a jira.<br></blockquote><div><br></div><div><br></div><div style>Nah, not a priority at all.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im HOEnZb"><br>
Matthias Wessendorf wrote:<br>
&gt; 1a)<br>
&gt; would perhaps,... add some &quot;monitoring&quot; if an unreasonalble about of<br>
&gt; &quot;new devices&quot; is registered, but that means we need some sort<br>
&gt; of analysis component (not for the first iteration) :)<br>
&gt;<br>
&gt; whoops, typos ===&gt;<br>
&gt; we could perhaps,... add some &quot;monitoring&quot; if an unreasonable amount of<br>
&gt; &quot;new devices&quot; is registered, but that means we need some sort<br>
&gt; of analysis component (not for the first iteration) :)<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Sun, May 19, 2013 at 11:08 AM, Matthias Wessendorf &lt;<a href="mailto:matzew@apache.org">matzew@apache.org</a><br>
</div><div class="HOEnZb"><div class="h5">&gt; &lt;mailto:<a href="mailto:matzew@apache.org">matzew@apache.org</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;     Concerns with both approaches<br>
&gt;<br>
&gt;<br>
&gt;     1)<br>
&gt;     It would be possible to register new devices, if the pub/private key<br>
&gt;     (or the accessKey:secret combination) would be hacked.<br>
&gt;<br>
&gt;     HOWEVER, the &quot;hacker&quot; has to know how to generate VALID tokens for<br>
&gt;     the different push-networks. Apple and Google will NOT accept<br>
&gt;     incorrect tokens, and IMO this as a minimal risk.<br>
&gt;     Similar for SimplePush. The SimplePush Network/Server, generates<br>
&gt;     UUIDv4 key, for every channel, so IMO.... it&#39;s hard to &quot;hijack&quot; that<br>
&gt;     as well.<br>
&gt;     =&gt; But I may be just naive.<br>
&gt;<br>
&gt;<br>
&gt;     1a)<br>
&gt;     would perhaps,... add some &quot;monitoring&quot; if an unreasonalble about of<br>
&gt;     &quot;new devices&quot; is registered, but that means we need some sort<br>
&gt;     of analysis component (not for the first iteration) :)<br>
&gt;<br>
&gt;<br>
&gt;     2) hacker can update device info<br>
&gt;     If the pub/private key (or the accessKey:secret combination) are<br>
&gt;     being compromised. it is possible to update informations for a<br>
&gt;     certain device. IF... he know the &quot;token&quot;.<br>
&gt;     So... it&#39;s than very simple that the hacker can update informations<br>
&gt;     for his phone (since that token is VERY easy to read, via the<br>
&gt;     platform APIs).<br>
&gt;     IMO not a big deal. If he updates his iPhone metadata (e.g. changing<br>
&gt;     &quot;iOS&quot; to &quot;Android&quot;). If he changes his token, he looks himself out<br>
&gt;     -&gt; No longer receives &quot;push notification messages&quot;<br>
&gt;<br>
&gt;     2a)<br>
&gt;     A hacker could update device infomations for other devices. BUT !!!!<br>
&gt;     he has to know the token of other devices, registered with our<br>
&gt;     server. This means, he needs access to those devices.<br>
&gt;     =&gt; IMO as well not a big risk..<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;     Summary:<br>
&gt;     I think, if we really have a &quot;extra&quot;  pub/private key (or the<br>
&gt;     accessKey:secret combination) for &quot;device (un)registration&quot;, and not<br>
&gt;     allowing this  pub/private key (or the accessKey:secret combination)<br>
&gt;     on other HTTP calls (e.g. register Push Application, register mobile<br>
&gt;     Varian, sending): The risk is IMO minimal.<br>
&gt;<br>
&gt;<br>
&gt;       Thoughts ?<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;     On Sun, May 19, 2013 at 10:58 AM, Matthias Wessendorf<br>
</div></div><div class="im HOEnZb">&gt;     &lt;<a href="mailto:matzew@apache.org">matzew@apache.org</a> &lt;mailto:<a href="mailto:matzew@apache.org">matzew@apache.org</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;         Another idea....<br>
&gt;<br>
&gt;         We generate, for EACH variant, an &quot;access-key&quot; with a generated<br>
&gt;         secret(password). This accessKey:secret combination would be,<br>
&gt;         similar to the previous email, ONLY be able to perform updates<br>
&gt;         for &quot;device (un)registration&quot;.<br>
&gt;<br>
&gt;         It would be NOT possible to use this combination for sending<br>
&gt;         messages to a device, (read: our HTTP send interface would not<br>
&gt;         allow this accessKey:secret combination).<br>
&gt;<br>
&gt;<br>
&gt;         Not, sure, but this is (I guess) a bit simpler, initially,<br>
&gt;         instead of using private/public key approach.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;         On Sat, May 18, 2013 at 12:48 AM, Matthias Wessendorf<br>
</div><div class="HOEnZb"><div class="h5">&gt;         &lt;<a href="mailto:matzew@apache.org">matzew@apache.org</a> &lt;mailto:<a href="mailto:matzew@apache.org">matzew@apache.org</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;             Hi,<br>
&gt;<br>
&gt;             once the app is installed on the phone (or launched in a<br>
&gt;             browser),<br>
&gt;             we (as discussed in the spec/mailing list) need to upload<br>
&gt;             the &quot;device token&quot; (or channelID) from the actual<br>
&gt;             device/channel to the Unified Push Server.<br>
&gt;<br>
&gt;<br>
&gt;             My questions:<br>
&gt;             Is it safe, if every &quot;Mobile Variant&quot; has a Private/Public<br>
&gt;             Key ???<br>
&gt;<br>
&gt;             The UP server keeps the private one.<br>
&gt;             Once we register a new mobile variant (e.g. HR for Android,<br>
&gt;             HR for iPad, HR for iPhone, ...) EACH variant has ONE<br>
&gt;             Private/Public key<br>
&gt;<br>
&gt;<br>
&gt;             The Public Key of this combo would be &quot;coded&quot; into the<br>
&gt;             actual mobiel application...<br>
&gt;<br>
&gt;             On EVERY iOS app, it would use the PubKey from the iOS<br>
&gt;             Variant, on EVERY JS-app, it would use the PubKey from the<br>
&gt;             SimplePush Variant, etc<br>
&gt;<br>
&gt;<br>
&gt;             So, that means EVERY installation (on the devices) would<br>
&gt;             have that pbulci key...<br>
&gt;<br>
&gt;             Would that be (extremely) odd, if &quot;1 Mio Russian hacker&quot;<br>
&gt;             would have that public key, used on the device, to perform<br>
&gt;             some sort of &quot;auth&quot; (e.g. via HTTP BASIC (just saying.....))<br>
&gt;             against the server, in order to upload the &quot;device token&quot; ??<br>
&gt;<br>
&gt;<br>
&gt;             Note: This Private/Public key would/should be EXCLUSIVE for<br>
&gt;             &quot;device registration&quot;. And really ONLY.. :-)<br>
&gt;<br>
&gt;             So that this &quot;Private/Public key&quot; pair can NOT be used<br>
&gt;             (==invalid) for sending messages to the installations, or<br>
&gt;             creating the Push-Applications / Mobile Variant Constructs.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;             Greetings,<br>
&gt;             Matthias<br>
&gt;<br>
&gt;             --<br>
&gt;             Matthias Wessendorf<br>
&gt;<br>
&gt;             blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
&gt;             sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
&gt;             twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;         --<br>
&gt;         Matthias Wessendorf<br>
&gt;<br>
&gt;         blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
&gt;         sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
&gt;         twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;     --<br>
&gt;     Matthias Wessendorf<br>
&gt;<br>
&gt;     blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
&gt;     sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
&gt;     twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Matthias Wessendorf<br>
&gt;<br>
&gt; blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
&gt; sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
&gt; twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
&gt;<br>
</div></div><div class="HOEnZb"><div class="h5">&gt; _______________________________________________<br>
&gt; aerogear-dev mailing list<br>
&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br><br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div>