<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>KramerC &#187; Issues</title>
	<atom:link href="http://kramerc.com/category/issues/feed/" rel="self" type="application/rss+xml" />
	<link>http://kramerc.com</link>
	<description>A whole site about me, now isn&#039;t that cool.</description>
	<lastBuildDate>Wed, 12 Oct 2011 03:07:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>The Serious Privacy Issues with Facebook</title>
		<link>http://kramerc.com/2010/05/07/the-serious-privacy-issues-with-facebook/</link>
		<comments>http://kramerc.com/2010/05/07/the-serious-privacy-issues-with-facebook/#comments</comments>
		<pubDate>Sat, 08 May 2010 04:53:20 +0000</pubDate>
		<dc:creator>Kramer</dc:creator>
				<category><![CDATA[Issues]]></category>
		<category><![CDATA[Social Networking]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[social media]]></category>

		<guid isPermaLink="false">http://kramerc.com/?p=469</guid>
		<description><![CDATA[Facebook has been making a lot of changes recently and many of which I am not pleased with them. Most of the issues mainly come down to privacy, which is slowing eroding away. The default privacy settings on Facebook are defaulted to Everyone. Everytime a new privacy setting comes along, it&#8217;s setting is usually defaulted [...]]]></description>
			<content:encoded><![CDATA[<p>Facebook has been making a lot of changes recently and many of which I am not pleased with them. Most of the issues mainly come down to privacy, <a href="https://www.eff.org/deeplinks/2010/04/facebook-timeline">which is slowing eroding away</a>. The default privacy settings on Facebook are defaulted to Everyone. Everytime a new privacy setting comes along, it&#8217;s setting is usually defaulted to Everyone. It seems that Facebook is trying to push users to be more open and public whether if they know it or not and if they like it or not.</p>
<p><strong>One of the recent changes on Facebook is that the information that is listed on profiles <a href="http://www.eff.org/deeplinks/2010/05/things-you-need-know-about-facebook">have been turned into &#8220;Connections&#8221;</a>.</strong> This means that now just about every piece of information listed on your profile is now associated with a page you like (or are a fan of), and they&#8217;re public too. This includes your current city, hometown, education, work history, and all your interests and activities. The problem with this is your connections are now public to everyone. Sure, you can control the &#8220;Visibility&#8221; of them on your profile, but that doesn&#8217;t mean they won&#8217;t show elsewhere on the site publicly to others that aren&#8217;t your friend. For example, when you make a connection to a page by simply liking the page, it is possible that you will show up on the page under the list of the people that like that certain page. There is, however, pages you cannot control the &#8220;Visibility&#8221; of on your profile and these pages are ones that not categorized, which are the ones placed under the Other category, in your interests. Also, every page you like is also able to show posts on your news feed unless you explicitly choose to hide them from your news feed or decide unlike the page.</p>
<p>I have decided to unlike every page I &#8220;liked&#8221; since I have became annoyed with all the news feed spam I received from these pages and how the connections were made public to everyone. This means that I no longer have any interests listed on my profile, oh well. I have noticed that when you do list your current city, hometown, education, and work history, you do not automatically like the page associated with it. This means if you unlike these pages, Facebook does not remove these pieces of information from your profile.</p>
<p>Another issue is that if you mention a page&#8217;s name in any post on your wall, it may show on up the page itself without you having any say of this happening, regardless if you have a connection with the page or not. If the privacy on the post mentioning the page is set to public, it may be visible for everyone to see on that page.</p>
<p><strong>You are automatically opted in Instant Personalization which automatically shares your public information. </strong>Currently sites such as <a href="http://www.facebook.com/docs">Docs.com</a>, <a href="http://www.facebook.com/apps/application.php?id=139475280761">Pandora</a>, and <a href="http://www.facebook.com/apps/application.php?id=97534753161">Yelp</a> are able to see your public information. You can opt out from Instant Personalization, but this does not prevent your friends from sharing information about you to these sites, which Facebook says, &#8220;Please keep in mind that if you opt out, your friends may still share public Facebook information about you to personalize their experience on these partner sites unless you block the application.&#8221; So in order to fully opt out, you must block every application that is part of Instant Personalization to prevent any information from being shared, which is completely unacceptable.</p>
<p><strong>Data you have set to private is shared with apps you use on Facebook</strong>.<strong> </strong>Almost <em>all</em> your data is shared with applications you authorize. Even your friends can share information about you to applications they use without you knowing. This is a big issue since you are now trusting the application developers to keep your data private. Many of application developers are unknown and this creates a major risk of your private data spreading. Facebook does not check applications to see if they are indeed doing something malicious such as ones out there to steal user&#8217;s information.</p>
]]></content:encoded>
			<wfw:commentRss>http://kramerc.com/2010/05/07/the-serious-privacy-issues-with-facebook/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>iPrism is Blocking lolz.ws for Pornography?</title>
		<link>http://kramerc.com/2010/01/25/iprism-is-blocking-lolz-ws-for-pornography/</link>
		<comments>http://kramerc.com/2010/01/25/iprism-is-blocking-lolz-ws-for-pornography/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 23:37:21 +0000</pubDate>
		<dc:creator>Kramer</dc:creator>
				<category><![CDATA[Issues]]></category>
		<category><![CDATA[content filtering]]></category>
		<category><![CDATA[filters]]></category>
		<category><![CDATA[iPrism]]></category>
		<category><![CDATA[lolz.ws]]></category>
		<category><![CDATA[web filtering]]></category>

		<guid isPermaLink="false">http://kramerc.com/?p=381</guid>
		<description><![CDATA[So today I have discovered that lolz.ws is on the filter list on iPrism for pornography/nudity. Now the last time I checked, lolz.ws has no sort of pornography or nudity which makes this baffling to me. It is simply a service to make short URLs similar to bit.ly and TinyURL. I have had issues with [...]]]></description>
			<content:encoded><![CDATA[<p>So today I have discovered that <a href="http://lolz.ws/" target="_blank">lolz.ws</a> is on the filter list on iPrism  for pornography/nudity.</p>
<p><a href="http://kramerc.com/wp-content/uploads/2010/01/LolzBlockediPrism.png"><img class="alignnone size-medium wp-image-382" title="LolzBlockediPrism" src="http://kramerc.com/wp-content/uploads/2010/01/LolzBlockediPrism-300x217.png" alt="" width="300" height="217" /></a></p>
<p>Now the last time I checked, lolz.ws has no sort of pornography or nudity which makes this baffling to me. It is simply a service to make short URLs similar to bit.ly and TinyURL.</p>
<p>I have had issues with this domain before. The domain was in the <a href="http://www.joewein.de/sw/spam-bl-l.htm" target="_blank">jwSpamSpy</a> spam domain blacklist a few months ago for some odd reason. Since the domain was in there some other web content filters had been blocking the site. I was able to get the blacklist removed for the domain though.</p>
<p><strong>Update 1/27: </strong><a href="http://twitter.com/iPrismWebFilter/status/8242122549" target="_blank">iPrism</a> has updated the rating of the site to &#8220;Internet Service&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://kramerc.com/2010/01/25/iprism-is-blocking-lolz-ws-for-pornography/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Login By Username On MySpace By Emulating iPhone Login</title>
		<link>http://kramerc.com/2009/10/31/login-by-username-on-myspace-by-emulating-iphone-login/</link>
		<comments>http://kramerc.com/2009/10/31/login-by-username-on-myspace-by-emulating-iphone-login/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 03:16:06 +0000</pubDate>
		<dc:creator>Kramer</dc:creator>
				<category><![CDATA[Issues]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Social Networking]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod Touch]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Justniffer]]></category>
		<category><![CDATA[MySpace]]></category>
		<category><![CDATA[SOAP]]></category>
		<category><![CDATA[SOAP+XML]]></category>

		<guid isPermaLink="false">http://kramerc.com/?p=280</guid>
		<description><![CDATA[One day I was logging onto MySpace using the iPhone app, I was curious to try using my username (it&#8217;s your vanity URL, if not set it&#8217;s your Friend ID), and it worked. Now I&#8217;m not sure why MySpace freaks out over being able to login by the username because Facebook intentionally allowed logging in [...]]]></description>
			<content:encoded><![CDATA[<p>One day I was logging onto MySpace using the iPhone app, I was curious to try using my username (it&#8217;s your vanity URL, if not set it&#8217;s your Friend ID), and it worked. Now I&#8217;m not sure why MySpace freaks out over being able to login by the username because Facebook intentionally allowed logging in by username earlier this month.</p>
<p>Since this login works on the iPhone/iPod Touch, there has to be a way to bring it to the computer in order to use this method. Since my router is pretty much a Linux server running DHCP on it, I could easily run a packet sniffer in the middle to find out how the iPhone/iPod Touch was communicating to MySpace. The packet sniffer I used was shell based and is called <a href="http://justniffer.sourceforge.net/" target="_blank">Justniffer</a>.</p>
<p>After figuring out the packet sniffer I figured out that the iPhone app uses SOAP+XML to exchange data. Once you type in the username and password, it sends the password in clear text to MySpace in order to create a hash and salt of the password. I am not sure why they really need to do this since you already sent the password over clear text, they could just save themselves a HTTP request by doing it in the actually login process.</p>
<p><strong>Update 11/5: </strong>MySpace has fixed this issue and logging in by username no longer works. The following error now occurs, &#8220;The email supplied is not registered to a valid user.&#8221;</p>
<p>The first step of the authentication request makes the following HTTP request:</p>
<pre>POST /SecurityService.asmx HTTP/1.1
Host: mobileservices.myspace.com
User-Agent: MySpace/1.6 CFNetwork/459 Darwin/10.0.0d3
Content-Length: 595
Content-Type: text/xml; charset=utf-8
Authorization: OAuth realm="http://mobileservices.myspace.com/",oauth_consumer_key="1000002",oauth_token="",oauth_signature_method="HMAC-SHA1",oauth_signature="MC37B2CcYBDeJPlT%2BT1jsjCZPSM%3D",oauth_timestamp="1256437313",oauth_nonce="9EC617B6-DEB7-427A-9463-B6AE3CFD8F4A",oauth_version="1.0"
Soapaction: urn:MySpace.IntegrationServices/GetSaltAndHash
Accept: */*
Accept-Language: en-us
Cookie: SessionDDF1=2962622b49c74a011793142740791e622b72e026b3477387; SessionDDF2=22b8f3a96cb338ae3990d279b29cefa01e58e2c5118f4486
Connection: keep-alive

&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"&gt;
&lt;soap12:Header&gt;
&lt;MySpace xmlns="urn:MySpace.IntegrationServices"&gt;
&lt;Version&gt;iPhone: 1.6&lt;/Version&gt;
&lt;DeviceID&gt;b6aaa9591ef5811e499ee1bf04758b3533eaccd7&lt;/DeviceID&gt;
&lt;/MySpace&gt;
&lt;/soap12:Header&gt;
&lt;soap12:Body&gt;
&lt;GetSaltAndHash xmlns="urn:MySpace.IntegrationServices"&gt;
&lt;request&gt;
&lt;TokenType&gt;Mobile&lt;/TokenType&gt;
&lt;Clear&gt;p@ssw0rd&lt;/Clear&gt;
&lt;/request&gt;
&lt;/GetSaltAndHash&gt;
&lt;/soap12:Body&gt;
&lt;/soap12:Envelope&gt;</pre>
<p>In this example the password simply is <em>p@ssw0rd</em>. Notice how there is no spot for the username in this request, all it does is create a salt and hash based on that password. I have no idea why this is necessary but knowing MySpace they obviously think it is.</p>
<p>This request will outcome the following HTTP response:</p>
<pre>HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Length: 547
Content-Type: application/soap+xml; charset=utf-8
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
X-Server: 7b262264f255ce9e4eea78ee5ed43e765b933575b6ad33d5
Set-Cookie: SessionDDF1=8c39718f6f8758c74900ce98793335c96e886d8666f52130; domain=.myspace.com; path=/
Date: Sun, 01 Nov 2009 02:52:01 GMT
Connection: keep-alive

&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;soap:Body&gt;
&lt;GetSaltAndHashResponsexmlns="urn:MySpace.IntegrationServices"&gt;
&lt;Results&gt;
&lt;Status&gt;Success&lt;/Status&gt;
&lt;StatusCode&gt;Success&lt;/StatusCode&gt;
&lt;SecurityComponents&gt;
&lt;Salt&gt;Q8NysHYF/cKqV/+RES0NdA==&lt;/Salt&gt;
&lt;Hash&gt;N+HrTQhAJencbKruQ2e8/qDKhELcJDq824aoSYzl5MA=&lt;/Hash&gt;
&lt;/SecurityComponents&gt;
&lt;/Results&gt;
&lt;/GetSaltAndHashResponse&gt;
&lt;/soap:Body&gt;
&lt;/soap:Envelope&gt;</pre>
<p>Now since they have received the salt and hash, we can proceed onto step two of the authentication. This actually verifies the login information with the salt and hash along with the username or email it has received. This step makes the following HTTP request:</p>
<pre>POST /SecurityService.asmx HTTP/1.1
Host: mobileservices.myspace.com
User-Agent: MySpace/1.6 CFNetwork/459 Darwin/10.0.0d3
Content-Length: 858
Content-Type: text/xml; charset=utf-8
Authorization: OAuth realm="http://mobileservices.myspace.com/",oauth_consumer_key="1000002",oauth_token="",oauth_signature_method="HMAC-SHA1",oauth_signature="L3vOxtNAADDGBRv2i16UvMoP97g%3D",oauth_timestamp="1256437314",oauth_nonce="E493D130-9496-4A17-A861-5862C657DF57",oauth_version="1.0"
Soapaction: urn:MySpace.IntegrationServices/Authenticate
Accept: */*
Accept-Language: en-us
Cookie: SessionDDF1=2962622b49c74a011793142740791e622b72e026b3477387; SessionDDF2=22b8f3a96cb338ae3990d279b29cefa01e58e2c5118f4486
Connection: keep-alive

&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"&gt;
&lt;soap12:Header&gt;
&lt;MySpace xmlns="urn:MySpace.IntegrationServices"&gt;
&lt;Version&gt;iPhone: 1.6&lt;/Version&gt;
&lt;DeviceID&gt;b6aaa9591ef5811e499ee1bf04758b3533eaccd7&lt;/DeviceID&gt;
&lt;/MySpace&gt;
&lt;/soap12:Header&gt;
&lt;soap12:Body&gt;
&lt;Authenticate xmlns="urn:MySpace.IntegrationServices"&gt;
&lt;request&gt;
&lt;RequestData&gt;
&lt;Hash&gt;N+HrTQhAJencbKruQ2e8/qDKhELcJDq824aoSYzl5MA=&lt;/Hash&gt;
&lt;CaptchaInfo&gt;
&lt;CaptchaLevel&gt;Medium&lt;/CaptchaLevel&gt;
&lt;CaptchaGuid&gt;&lt;/CaptchaGuid&gt;
&lt;CaptchaImageSize&gt;Sz120&lt;/CaptchaImageSize&gt;
&lt;CaptchaText&gt;&lt;/CaptchaText&gt;
&lt;/CaptchaInfo&gt;
&lt;Salt&gt;Q8NysHYF/cKqV/+RES0NdA==&lt;/Salt&gt;
&lt;Credential&gt;somerandomusername&lt;/Credential&gt;
&lt;/RequestData&gt;
&lt;/request&gt;
&lt;/Authenticate&gt;
&lt;/soap12:Body&gt;
&lt;/soap12:Envelope&gt;</pre>
<p>In this request we have used the hash and salt, along with the username which is called Credential here. In this example it is <em>somerandomusername</em>. Now since this is all sent the following HTTP response occurs:</p>
<pre>HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Length: 566
Content-Type: application/soap+xml; charset=utf-8
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
X-Server: 12e0f2a61ef7e974de69e6f93fc8612bb56e8a9e86e1792c
Set-Cookie: SessionDDF1=ee28a6c308e5ab151a34f39f979df9e80737ca2a9eeb80d7; domain=.myspace.com; path=/
Date: Sun, 01 Nov 2009 02:59:28 GMT
Connection: keep-alive

&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;soap:Body&gt;
&lt;AuthenticateResponse xmlns="urn:MySpace.IntegrationServices"&gt;
&lt;AuthenticateResult&gt;
&lt;StatusMessage&gt;Invalid username or password.&lt;/StatusMessage&gt;
&lt;Status&gt;Error&lt;/Status&gt;
&lt;ErrorInfo&gt;
&lt;Name&gt;InvalidCredentials&lt;/Name&gt;
&lt;Description&gt;Invalid username or password.&lt;/Description&gt;
&lt;/ErrorInfo&gt;
&lt;/AuthenticateResult&gt;
&lt;/AuthenticateResponse&gt;
&lt;/soap:Body&gt;
&lt;/soap:Envelope&gt;</pre>
<p>Since the the password to <em>somerandomusername </em>is invalid, we are presented with &#8220;Invalid username or password.&#8221; I honestly do not understand why there needs to be a creation of the salt and hash before the actual authentication request is made.</p>
<p>Now since I know how the requests are made, I&#8217;ve wrote a program to emulate these requests. The program was created with Eclipse using Java 1.6.</p>
<p>The program can be downloaded <a href="http://stuff.kramerc.com/myspace/iPhoneLogin.zip">here</a>.<br />
The source code is included and the program may be modified and redistributed freely.<br />
<strong>DISCLAIMER: </strong>I am not liable for ANY damages caused by this program.</p>
<p>Here are screenshots of the program in use:</p>
<p><a href="http://kramerc.com/wp-content/uploads/2009/10/Usage.PNG"><img class="alignnone size-full wp-image-286" title="Usage" src="http://kramerc.com/wp-content/uploads/2009/10/Usage.PNG" alt="Usage" width="542" height="274" /></a><br />
Arguments for the program.</p>
<p><a href="http://kramerc.com/wp-content/uploads/2009/10/LoginFail.PNG"><img class="alignnone size-full wp-image-292" title="LoginFail" src="http://kramerc.com/wp-content/uploads/2009/10/LoginFail.PNG" alt="LoginFail" width="535" height="680" /></a><br />
Example of a failed login.</p>
<p><a href="http://kramerc.com/wp-content/uploads/2009/10/LoginLockedOut.PNG"><img class="alignnone size-full wp-image-293" title="LoginLockedOut" src="http://kramerc.com/wp-content/uploads/2009/10/LoginLockedOut.PNG" alt="LoginLockedOut" width="535" height="680" /></a><br />
Example of a failed login on a locked out account. Notice in the response it says <em>&#8220;There was an error in processing this request.&#8221;</em></p>
<p><a href="http://kramerc.com/wp-content/uploads/2009/10/LoginSuccess.PNG"><img class="alignnone size-full wp-image-294" title="LoginSuccess" src="http://kramerc.com/wp-content/uploads/2009/10/LoginSuccess.PNG" alt="LoginSuccess" width="535" height="680" /></a><br />
Example of a successful login.</p>
]]></content:encoded>
			<wfw:commentRss>http://kramerc.com/2009/10/31/login-by-username-on-myspace-by-emulating-iphone-login/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

