<div dir="ltr"><a href="http://www.zdnet.com/article/dont-want-your-new-system-getting-hacked-follow-these-13-steps-and-you-might-just-avoid-it/">http://www.zdnet.com/article/dont-want-your-new-system-getting-hacked-follow-these-13-steps-and-you-might-just-avoid-it/</a><br><br><p>The IT security arm of UK surveillance agency GCHQ has issued a series of guidelines <a href="https://www.cesg.gov.uk/guidance/security-design-principles-digital-services-0" target="_blank">aimed at building secure online services</a>.</p><p>Government
services that make use of sensitive data are regular targets of
hackers, and as CESG -- the information assurance arm of the spy agency
-- notes, when such attacks are successful the fallout can be damaging,
expensive, and embarrassing for the organisations involved. </p><p>GCHQ knows a thing or two about hacking, of course -- and the UK government is <a href="http://www.zdnet.com/article/web-snooping-law-moves-ahead-despite-warning-of-suspicionless-surveillance/" target="_blank">currently steering new legislation through parliament</a> which could help better define when GCHQ and other parts of law enforcement are permitted to carry out hacking.</p><p>CESG said that in many cases, the worst-case hacking scenario can be
avoided if services are designed and operated with security as a core
consideration. It has published a set of design principles which it says
can help create services which are resilient to attack and easier to
manage and update.</p><p>There are four sets of guidelines: the first
outlines seven points to consider before starting a project, the second
sets out 11 ways to making services harder to compromise, the third
names 13 methods to minimise the impact of any successful attack, and
the fourth details seven approaches for detecting and managing attacks. </p><p>CESG
said that its own investigations found that hackers used widely
available tools to exploit basic vulnerabilities and said these sorts
of 'commodity' attacks can be stopped by well-designed systems. Its
recommendations around making services hard to compromise include:</p><p><strong>1. Validate or transform all external input before processing it:</strong>
Simple data formats that can be validated are preferred to complex
formats. It notes that it is very difficult to check for malicious code
in complex file formats such as PDFs or spreadsheets, so this content
should be transformed into another format to 'neuter' any malicious
content.</p><p><strong>2. Render untrusted content in a disposable environment:</strong>
Render any untrusted and complex content you receive from an external
source in an environment designed to safely handle malware. Consider
using virtualisation, it says, to create an environment that is reset
after processing potentially malicious content.</p>
<p><strong>3. Only import trustworthy software and verify its legitimacy: </strong>Use software which has signatures you can verify to prove its integrity, and do this automatically.</p><p><strong>4. Design for easy maintenance: </strong>Check for patches regularly. Frequent small updates are preferred over infrequent large updates.</p><p><strong>5. Use tried and tested frameworks:</strong> Writing your own software from scratch rather than building upon a common framework is a high-risk strategy, it warns.</p><p><strong>6. Reduce your attack surface: </strong>Only
expose the minimum interfaces necessary. When building upon common
frameworks, disable any components and libraries you don't need.</p><p><strong>7. Users with access to data should be identified and authenticated: </strong>Data should only be released after verifying the identity, authentication status, and appropriate attributes of the user. </p><p><strong>8. Make it easy for administrators to manage access control: </strong>Having a unified view of access control for the service can help administrators maintain granted permissions more easily.</p><p><strong>9. Don't build your own cryptographic protections: </strong>You should only use existing algorithms and protocols, preferably using those exposed by your chosen software stack. </p><p><strong>10. Protect against spear-phishing and watering-hole attacks:</strong> Systems administrators should not view email or browse the web from their administrative account or device.</p><p><strong>11. Make it easy for users to do the right thing: </strong>Security
breaches often occur because users have developed workarounds for
system inadequacies. Make the easiest method for users to use your
service the most secure.</p><p>The full set of CESG security <a href="https://www.cesg.gov.uk/guidance/security-design-principles-digital-services-0" target="_blank">principles can be found here</a>. </p></div>