    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
     <channel>
        <title>ACCU  :: An Open Question (or How I Learned To Stop Worrying And Love Public Wi-Fi)</title>
        <link>https://members.accu.org/index.php/articles/2208</link>
        <description>Professionalism in Programming</description>
        <dc:language>en-us</dc:language> 
        <dc:creator>Administrator</dc:creator> 
        <admin:generatorAgent rdf:resource="http://www.xaraya.org" /> 
        <admin:errorReportsTo rdf:resource="mailto:webeditor@accu.org" />
       <sy:updatePeriod>hourly</sy:updatePeriod>
       <sy:updateFrequency>1</sy:updateFrequency>
       <docs>http://backend.userland.com/rss</docs>




<div class="xar-mod-head"><span class="xar-mod-title">Programming Topics + CVu Journal Vol 28, #1 - March 2016</span></div>

<table border="0" cellpadding="1" cellspacing="0">
    <tbody>
    <tr>
        <td valign="top">
            Browse in :
       </td>
       <td valign="top">

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c13/">Topics</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c65/">Programming</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c76/">Journals</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c77/">CVu</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c359/">281</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/c65-359/">Any of these categories</a>

                    -                        <a href="https://members.accu.org/index.php/articles/c65+359/">All of these categories</a>
<br />
</td>
   </tr>
   </tbody>
</table>




<div class="xar-error">
   <p>
 <strong>Note:</strong> when you create a new publication type,
the articles module will automatically use the templates
<em>user-display-[publicationtype].xt</em>
and <em>user-summary-[publicationtype].xt</em>.
If those templates do not exist when you try to preview or display a new article,
you'll get this warning :-)  Please place your own templates in themes/<em>yourtheme</em>/modules/articles . The templates will get the extension .xt there. </p>
</div>
<div class="xar-norm xar-standard-box-padding">
   <h1><strong>Title:</strong>&nbsp;An Open Question (or How I Learned To Stop Worrying And Love Public Wi-Fi)</h1>
<p><strong>Author:</strong>&nbsp;Martin Moene</p>
<p>
<strong>Date:</strong> 10 March 2016 14:39:26 +00:00 or Thu, 10 March 2016 14:39:26 +00:00</p>
<p><strong>Summary:</strong>&nbsp;Vertices examines some of the dangers of using other peopleâ€™s networks.</p>

</p>
<p><strong>Body:</strong>&nbsp;<p class="quote">A paranoid is someone who knows a little of whatâ€™s going on.<br />~ William S. Burroughs</p>

<p class="quote">Just because youâ€™re paranoid doesnâ€™t mean they arenâ€™t after you.<br />~ origin unknown</p>

<p>The term â€˜computer virusâ€™ was coined over 30 years ago <a href="#[1]">[1]</a> to describe self-replicating computer programs, and since then, weâ€™ve become very well acquainted with the threats posed by computer malware of many different kinds. Itâ€™s a brave personal computer owner who has no anti-virus protection, and more general anti-malware programs are becoming popular too. Many people, however, believe that this protection is both necessary <em>and</em> sufficient. </p>

<p>Itâ€™s becoming increasingly apparent that Identity Theft is a burgeoning problem (see <a href="#[2]">[2]</a> for some data from early 2015), and in an age when wireless Internet connectivity is considered essential, as is being able to have it whilst out-and-about, it is here that we are the most vulnerable. </p>

<p>These vulnerabilities present challenges to the developers of mobile applications and connected devices, too, since they have a responsibility to protect their customersâ€™ information. In this article I want to consider some of the risks with this continuous connectivity, on the basis that fore-warned is fore-armed. To finish off, Iâ€™ll suggest some simple things you can do to mitigate or eliminate those risks.</p>

<h2>Threat landscape</h2>

<p>The Age of Mobile Communications is in full swing, no doubt about it. Mobile phones have been with us for a good while, but much more recently, those phones have become â€˜smartâ€™, which essentially means â€˜connected to the Internetâ€™. Although the take-up of technology such as 4G has been good (by the look of it), the coverage in the UK is still very patchy, and so many people take advantage of cafÃ©s, hotels, coffee shops and pubs providing customer Wi-Fi â€“ often for free. Naturally enough, this has led to an increase in the use of these establishments as temporary offices, establishing a kind of barter trade of connectivity for beer/coffee/snacks which seems to be largely tolerated on both sides.</p>

<p>Many of us routinely allow our telephones, tablets, laptops, etc., to just connect to any wireless signal going, and use that channel to catch up on email, social media of various types, The News, whatever. With all of this wireless communications traffic saturating (in some cases, literally) the air-waves, itâ€™s no wonder, then, that folk with less than entirely honourable intentions have taken advantage.</p>

<p>Public Wi-Fi is only one part of the problem. The Internet of Things is a much less visible network of connected devices, and demonstrably vulnerable to attack (for some fun examples, see <a href="#[3]">[3]</a>, and <a href="#[4]">[4]</a>). At least part of the reason that so many security flaws are found in such devices is that they are designed to be small, and have low power requirements, which translates to having insufficient processing power and/or resources to spare for things like encryption.</p>

<h2>The home front</h2>

<p>You might think that being able to crack your home router would be the crown jewels for most miscreants (and you shouldnâ€™t underestimate how bad that would be), but itâ€™s sufficiently difficult, if the security is good enough, that if an attacker canâ€™t get in with â€˜passwordâ€™, theyâ€™ll <em>probably</em> give up. The norm these days is for home routers to use WPA2 with a pre-shared key â€“ which is good enough as long as the password is sufficiently strong. (WEP security for routers is known to be deeply flawed. <a href="#[5]">[5]</a>)</p>

<p>The primary goal of an attacker is usually financial: if they cannot gain direct access to your bank account (and they almost certainly cannot do that), then the aim is to obtain enough information about you to be able to impersonate you well enough to transfer your money by convincing your bank that it is you authorising it, or spend your money by clocking up online transactions using your credit card or other means.</p>

<p>Of course, there are the obvious bits of information that are of direct interest â€“ credit card numbers and security codes, your fatherâ€™s middle name, and so on â€“ but <em>any</em> information is valuable, and can be obtained in a variety of ways. Your online presence in social networking, online petitions, mailing lists, just about anything, could provide someone with at least part of the means to pretend to be you, but hijacking your home router probably isnâ€™t the most effective way to obtain it. If I were an attacker, I wouldnâ€™t bother with targeting a single individual unless I knew it was going to be worth it. Iâ€™d much rather cast a wide net, and see what I could find.</p>

<p>By which I mean sitting in a public place when itâ€™s busy, and letting all that traffic come to me.</p>

<h2>Hackersâ€™ delight</h2>

<p>My mate Norm is a reasonably tech-savvy fellow. He lives in a fashionable part of town near to his work where he does â€˜something in ITâ€™, which is mostly keeping a small company email and web server in good order, and making sure the backups get run. Itâ€™s not unusual on a Friday early evening to see him join some friends in one of the many bars that litter the route between the office and home, and tonight is the turn of a pub called The Queenâ€™s Head. He orders his round of drinks at the bar, and while heâ€™s waiting, he takes out his phone and checks to see if thereâ€™s a wireless network in range so he can try and round up a few more people to make a night of it.</p>

<p>Sure enough, he finds a nice strong signal from an access point (AP) broadcasting its name as â€˜QueensHead Customer Wifiâ€™. Itâ€™s an open network, so he doesnâ€™t have to go to the bother of asking for the Wi-Fi password, or seeing if itâ€™s written up anywhere, so he connects and is away on the Internet.</p>

<p>Is Norm taking unnecessary risks by doing this?</p>

<p>This being an open network, the traffic is unencrypted, and could â€“ in theory â€“ be â€˜sniffedâ€™ by anyone. This only matters, of course, for sensitive information being transmitted or received, e.g. login credentials, passwords, the stuff that Norm knows he wants to keep private. In practice, most or all of this traffic will be encrypted <em>before</em> it reaches the network, most commonly with a HTTPS connection from a browser or mobile-app versions of his social networking sites.</p>

<p>So, while an eavesdropper on the network can inspect the traffic, itâ€™ll still be encrypted. The security isnâ€™t perfect (there really is no such thing), but itâ€™s sufficiently difficult to crack the channel encryption that it will defeat anyone but the most determined and skilled attacker, who probably doesnâ€™t care about Normâ€™s friendsâ€™ updates on social networks, to be honest. (And if you think you <strong>are </strong>the target of such people, you already <em>know</em> how to protect yourself better than I do.)</p>

<p>Is it enough for Norm to depend on that level of security? What are the risks?</p>

<h2>No, Iâ€™m Brian</h2>

<p>Anyone can set up a wireless base station as an access point. Most modern mobile phones have the ability to do it, and even to â€˜tetherâ€™ that AP to the mobile data connection out to the Internet. To continue the prior example, what do you think would be the effect of me doing that on my own phone in the same pub, and renaming my portable Wi-Fi hotspot to be the same as the open network â€“ â€˜QueensHead Customer Wifiâ€™?</p>

<p>Well, to be honest, in practice, not much effect at all. Firstly, most mobile phone hotspot facilities are deliberately WPA2 protected, so impersonating an open network wouldnâ€™t have much point, since anyone connecting would have to provide a password. Secondly, when devices such as <em>your</em> phone look for a network to connect to, they will inspect certain metrics about any in range. The most obvious of those metrics will be signal strength, and the pubâ€™s router providing â€˜realâ€™ Wi-Fi will be <em>much</em> stronger than my phone.</p>

<p>Still, itâ€™s a possibility, and in theory at least, if someone managed to connect to my wireless hotspot, I could intercept and inspect their traffic. And there is certainly no difficulty in having two devices broadcasting the same network SSID â€“ there are perfectly reasonable reasons to do that. However, anyone who did connect would be using my bandwidth, and a mobile phone is <em>not</em> a great platform for packet sniffing.</p>

<p>A laptop of reasonable spec, however, is a different matter. Itâ€™s fairly straightforward in Windows or Linux to advertise yourself as an access point with SSID, if your wireless hardware supports it. Inexpensive wireless cards and USB dongles are available which support the â€˜Masterâ€™ mode required to do it, in any case, and having one of these also gets around the problem that you canâ€™t operate a wireless network device in Master mode <em>and</em> as a client to the Internet at the same time. Having two wireless interfaces means you can use one as an access point and the other to connect to the Internet. Thatâ€™s important, because not many people who connect to your access point will stay connected long if they canâ€™t themselves connect to the Internet!</p>

<p>What Iâ€™ve just described is whatâ€™s known as a Rogue AP, and is a classic Man-in-the-Middle (MitM) attack using wireless networking. If you have connected your device to my AP, there are a few things I can now do to try and collect more interesting data than the possibly encrypted packets youâ€™re sending and receiving.</p>

<p>Before we go on, I must make clear at this point that doing <em>any</em> of these things is <strong>illegal</strong> in most countries. Specifically, intercepting somebody elseâ€™s network connection without their permission, for any purpose, can land you in real trouble with the authorities. I describe them here for educational purposes. In short, donâ€™t do any of these things. YHBW.</p>

<h3>Thought police</h3>

<p>I can set up my own DNS server, and respond to any DNS requests by you with an address of my choosing â€“ and therefore, with content of my choosing. That content could even be a look-alike page for the request youâ€™ve made, requesting that you log in. Iâ€™m sure I donâ€™t need to spell out the consequences of that.</p>

<p>This attack is called a DNS Hijack, and itâ€™s made possible with a small handful of open-source tools and some networking know-how. <a href="#[6]">[6]</a> Thereâ€™s a good chance youâ€™ve seen one in action, if youâ€™ve ever used a public (open or not) Wi-Fi and been redirected to a â€˜Captive Portalâ€™ that requires a login, payment, or just acceptance of T&amp;Cs. Itâ€™s usually done the same way, by intercepting DNS requests and forwarding to the IP address of the portal. You might think this usage is benign, but of course it can itself be spoofed, and used to phish for credit card details, or other information.</p>

<h3>Bait and switch</h3>

<p>I have already mentioned that HTTPS is secure enough to deflect most attackers, but with a bit of ingenuity itâ€™s possible to subvert it under some circumstances. First, I can intercept your request for a secure (HTTPS) connection, and act as a proxy to your requested site, providing you with a regular HTTP connection, and maintaining the HTTPS connection myself, forwarding all requests and responses appropriately. As far as the remote site is concerned, you are connected securely, but you might notice that your own connection was HTTP only â€“ if you happened to look, for example, at the browser address bar. This method might be used to obtain your credentials over an insecure line (between you and my router).</p>

<p>In a more sophisticated variant of this attack, my proxy could provide you with an SSL certificate, which would most likely cause a warning on your device that the connection might not be secure, but if you ignored that warning, youâ€™d <em>think</em> you had a secure connection.</p>

<p>This attack is called SSL-stripping, and is described in detail on the website run by the man who developed it <a href="#[7]">[7]</a>.</p>

<h2>The codersâ€™ challenge</h2>

<p>If you are writing code for mobile applications or IoT devices that process user information <em>in any way</em>, then you have a responsibility, and probably a legal requirement, to protect that information. As a developer, you need to be aware of actual and potential threats to make your product(s) secure. There is more to this than hardening code against buffer over-runs and SQL injection, although those things are still important.</p>

<p>Identifying those vulnerabilities, and crafting a viable attack to exploit them, actually requires a significant amount of effort, and wonâ€™t even be considered if youâ€™re sending your admin password â€“ or worse, your <em>customerâ€™s</em> password â€“ in plaintext back to â€˜Motherâ€™.</p>

<p>One of the simplest ways to be less insecure is to gather less data: if you donâ€™t need it, donâ€™t ask for it. However, I am aware that useful tools often require a revenue stream. The increasing appetite of marketing departments for our most personal data is unnerving at best (to me, anyway), but if you must have it, at least use it and transmit it securely. If your app talks over the Internet, make it always use HTTPS or other secure channel, and warn the user <strong>very loudly</strong> if an encrypted connection is unavailable.</p>

<p>Fortifying applications and devices with certificate authenticated security is not a trivial exercise, certainly itâ€™s harder than statically identifying buffer over-runs, but there it is. Fruit that hangs low on one side of the fence isnâ€™t necessarily easy to reach from the other.</p>

<h2>Whoever you want me to be</h2>

<p>You might at this point still regard these attacks as pretty unlikely. After all, they depend on you connecting to the Internet through an <strong>open</strong> access point that happens to be under my control, and conducting your business over that connection. I still have a couple of tricks in my bag of goodies to share. First, letâ€™s have a quick tour of how most devices associate with Wi-Fi routers.</p>

<h3>Beacon and probe</h3>

<p>When you turn on Wi-Fi on your phone (for example), you will often see a list of available wireless network names (SSIDs). This list is obtained by listening for Beacon Frames, which are part of the IEEE 802.11 management protocol. The beacon is sent by a wireless access point, and includes its name, MAC address and what (if any) security protocols it supports, amongst other things.</p>

<p>Conversely, your phone will send probe frames to listening APs. Broadcast probes are just a request for the list of networks in range, a direct counterpart of the beacon frame above. However, many devices <em>remember</em> the networks to which they have previously connected in a preferred network list. The device will probe directly for those networks (usually only when there is no active wireless connection). If the phone receives a response to such a probe, it will probably attempt to automatically connect (this is the default behaviour for most wireless device drivers).</p>

<p>If the phone is connected to a wireless network, and that connection is dropped, the preferred network list will be probed again. The response to a probe contains information about signal strength and data rates, and most devices will use this data to choose the â€˜bestâ€™ connection.</p>

<h3>I am Spartacus</h3>

<p>Iâ€™ve already mentioned about wireless equipment and monitor mode, which allows me to listen to all and any wireless traffic including the management frames such as beacons and probes. If I receive a probe for a network called â€˜Spartacusâ€™, I can arrange to respond with the equivalent of â€˜I am Spartacusâ€™, and if I am broadcasting a strong signal, there is every chance the probing device will try to connect to my rogue access point.</p>

<p>One last thing to note: most devices will stop probing for new networks once they have associated and connected with an access point. However, with the right equipment â€“ itâ€™s that inexpensive wireless hardware again â€“ I can even arrange to impersonate the network to which youâ€™re currently connected, force you to drop that connection (this is called a de-auth, AKA â€˜get off my LANâ€™), at the same time as listening for the resulting probes and impersonating those networks too.</p>

<p>Moreover, my access point can impersonate <em>dozens</em> of networks simultaneously, capturing the traffic from anyone who allows their device to connect. </p>

<h2>Are you paranoid yet?</h2>

<p>Back to my question about Norm. <em>Now</em> do you think he was being reckless to depend just on HTTPS encryption over an open network? There are other attacks made possible (or easier) with the rogue access point, including session side-jacking, cross-site scripting and cross-site request forgery. If you think this is cause for concern, so you should â€“ it definitely is! See <a href="#[8]">[8]</a>, <a href="#[9]">[9]</a>, <a href="#[10]">[10]</a>, <a href="#[11]">[11]</a> and <a href="#[12]">[12]</a>.</p>

<p>The real question now is this: is there anything you can do about it, to either detect the attacks, or render them useless to an attacker? </p>

<p>The answer to that is simple: yes there is. First, use a modern browser that implements HSTS <a href="#[13]">[13]</a>. This will defeat SSL stripping and protocol hijacking, and was in fact developed as a direct response to the original SSLStrip demo by Moxie Marlinspike (see <a href="#[7]">[7]</a>). Second, use a browser plugin such as HTTPSEverywhere <a href="#[14]">[14]</a> or one of its variants. This tool attempts to <em>enforce</em> a secure connection if one is available, and tries to make sure that your whole experience is as secure as it can be.</p>

<p>Lastly, invest in a Virtual Private Network, and use it anytime youâ€™re using a connection you cannot <strong>guarantee</strong> is safe. Doing all your Internet activity over the VPN (in <em>addition</em> to using HTTPS and everything else) renders most of the attacks Iâ€™ve described here toothless. DNS hijacking is easily defeated by knowing the IP address of your VPN server and not connecting by name, but a fake captive portal might be harder to bypass.</p>

<p>Using a VPN that you trust means that it <em>doesnâ€™t matter</em> if youâ€™re unwittingly connecting to the Internet via a rogue access point. The VPN server itself will usually provide its own end-points for DNS and gateways to the Internet, and most VPN software also encrypts the data transmitted and received, affording you an extra level of security. </p>

<p>Detecting the presence of a Rogue AP isnâ€™t necessarily easy, and in a corporate environment warrants expensive internal routing equipment and an army of vigilant network supervisors. However, on a personal level, if you notice that your phone is connected to a network with the same name as your home Wi-Fi, and youâ€™re in a cafe miles from your house, then unless your home Wi-Fi is named something common, itâ€™s probably a fake network. Similarly, if you find yourself connected to an open network that you were expecting to be protected, thereâ€™s a good chance itâ€™s a rogue. Be wary of captive portals, and always be vigilant about personal information you provide to anyone.</p>

<h2>Socially speaking</h2>

<p>If I can get enough information on you, such as, say, your date of birth, post code and motherâ€™s maiden name, along with details of your bank account, I might be able to persuade your bankers to transfer money into an account I control. In fairness to most banks these days, theyâ€™re more aware of the need for better security over the phone, and so this may not be enough â€“ but if I am an attacker and can get even <em>some</em> of this data on you, itâ€™s a start.</p>

<p>If I canâ€™t use that information directly to get your money, I may be able to sell it on to someone else who <em>can</em>. Identity fraud is big business, attracting serious money, and correspondingly scary people. If I can (theoretically) do all this, then someone else with a real intent to rob you can <em>actually</em> do it.</p>

<p>If you ever use a Wi-Fi connection in a coffee shop, pub, hotel, airport, someone elseâ€™s house, and especially if you ever use public open Wi-Fi, you need to be aware of the risks, and know how to protect yourself. Absolute security is a myth, of course, but you can do some things for little or no cost to make life much more difficult for any attacker. <em>Not</em> doing the simple things described here just make life unnecessarily easy for people who want to scam you or steal your identity.</p>

<p>If you are a company making mobile apps, or devices that use the Internet, whether itâ€™s a router, smart TV, home-automation IoT widget, or a toy, or youâ€™re a programmer writing the code for such things, if you make use of customer details then this stuff matters. If I am your customer, then itâ€™s not <em>your</em> data. Itâ€™s <em>my</em> data. And itâ€™s just possible that in the future, I wonâ€™t just have to take your word that youâ€™re secure, Iâ€™ll be able to look for myself. <a href="#[15]">[15]</a></p>

<h2>References</h2>

<p class="bibliomixed"><a id="[1]"></a>[1]	Fred Cohen, Wikipedia, <a href="https://en.wikipedia.org/wiki/Fred_Cohen">https://en.wikipedia.org/wiki/Fred_Cohen</a></p>

<p class="bibliomixed"><a id="[2]"></a>[2]	Cifas, â€˜Identity Fraud up by 27%...â€™, <a href="https://www.cifas.org.uk/id_fraud_first_quarter">https://www.cifas.org.uk/id_fraud_first_quarter</a></p>

<p class="bibliomixed"><a id="[3]"></a>[3]	Nick Feamster, â€˜Who will secure the Internet of Things?â€™, Jan 2016, <a href="https://freedom-to-tinker.com/blog/feamster/who-will-secure-the-internet-of-things/">https://freedom-to-tinker.com/blog/feamster/who-will-secure-the-internet-of-things/</a></p>

<p class="bibliomixed"><a id="[4]"></a>[4]	John Leyden, <em>The Register</em>, â€˜Hopelessly insecure Motorola CCTV...â€™, Feb 2016, <a href="http://www.theregister.co.uk/2016/02/03/motorola_cctv_iot_insecure/">http://www.theregister.co.uk/2016/02/03/motorola_cctv_iot_insecure/</a></p>

<p class="bibliomixed"><a id="[5]"></a>[5]	Lee Barken, â€˜WEP Vulnerabilitiesâ€™, Dec 2003,<a href="http://www.informit.com/articles/article.aspx?p=102230&amp;seqNum=12">http://www.informit.com/articles/article.aspx?p=102230&amp;seqNum=12</a></p>

<p class="bibliomixed"><a id="[6]"></a>[6]	Chris Sanders, <em>Windows Security</em>, â€˜Understanding Man in the Middle Attacksâ€™, Apr 2010, <a href="http://www.windowsecurity.com/articles-tutorials/authentication_and_encryption/Understanding-Man-in-the-Middle-Attacks-ARP-Part2.html">http://www.windowsecurity.com/articles-tutorials/authentication_and_encryption/Understanding-Man-in-the-Middle-Attacks-ARP-Part2.html</a></p>

<p class="bibliomixed"><a id="[7]"></a>[7]	Moxie Marlinspike, SSLStrip, <a href="http://www.thoughtcrime.org/software/sslstrip/">http://www.thoughtcrime.org/software/sslstrip/</a></p>

<p class="bibliomixed"><a id="[8]"></a>[8]	Shaun Nichols, <em>The Register</em>, â€˜How to hijack MILLIONS of Samsung Mobes...â€™, Jun 2015, <a href="http://www.theregister.co.uk/2015/06/17/samsung_flaw_keyboard/">http://www.theregister.co.uk/2015/06/17/samsung_flaw_keyboard/</a></p>

<p class="bibliomixed"> <a id="[9]"></a>[9]	Chris Sanders, <em>Windows Security</em>, â€˜Understanding Man in the Middle Attacksâ€™, May 2010, <a href="http://www.windowsecurity.com/articles-tutorials/authentication_and_encryption/Understanding-Man-in-the-Middle-Attacks-ARP-Part3.html">http://www.windowsecurity.com/articles-tutorials/authentication_and_encryption/Understanding-Man-in-the-Middle-Attacks-ARP-Part3.html</a></p>

<p class="bibliomixed"><a id="[10]"></a>[10]	Scott Helme, â€˜Advanced Session Hijackingâ€™, Aug 2013, <a href="https://scotthelme.co.uk/advanced-session-hijacking/">https://scotthelme.co.uk/advanced-session-hijacking/</a></p>

<p class="bibliomixed"><a id="[11]"></a>[11]	Wikipedia, <a href="https://en.wikipedia.org/wiki/Cross-site_scripting">https://en.wikipedia.org/wiki/Cross-site_scripting</a></p>

<p class="bibliomixed"><a id="[12]"></a>[12]	OWASP, Oct 2015, <a href="https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)">https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)</a></p>

<p class="bibliomixed"><a id="[13]"></a>[13]	Wikipedia, HTTP Strict Transport Security, <a href="https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security">https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security</a></p>

<p class="bibliomixed"><a id="[14]"></a>[14]	HTTPSEverywhere, Electronic Frontier Foundation, <a href="https://www.eff.org/https-everywhere">https://www.eff.org/https-everywhere</a></p>

<p class="bibliomixed"><a id="[15]"></a>[15]	Kieren McCarthy, <em>The Register</em>, â€˜Show us the code...â€™, Jan 2016, <a href="http://www.theregister.co.uk/2016/01/25/source_code_ftc_commissioner/">http://www.theregister.co.uk/2016/01/25/source_code_ftc_commissioner/</a></p>
</p>
<p><strong>Notes:</strong>&nbsp;</p>
<p><em>More fields may be available via dynamicdata ..</em></p>
</div>
</channel>
</rss>
