Secure Passwords

Your passwords should be unique and memorable. If you do not read any more of this article, just remember to make your passwords from three random words.

Passwords should be…

  • long at least 10 characters
  • unique – do not use the same password for more than one purpose
  • memorable – if possible so you do not have it on a yellow sticky!
  • complex – add some numbers upper and lower case characters and some non-alphanumerics such as $, -,!,@ (special characters)
  • regularly changed
  • securely stored if stored at all. Possibly an encrypted file or a specialist recognised password vault
  • changed occasionally (changed too often can create its own security weaknesses). It is accepted that a more complex long password changed less frequently (say annually) is better than a simpler, shorter password changed frequently (e.g. every quarter).

Some of the above may conflict. The better (long, uncrackable, frequently changed, etc.) your password is, the more difficult it is to recall. Therefore, you need to record it and, unless this is done securely, that in itself becomes a security weakness. The familiar yellow sticky on the screen is dangerous but writing them all down on a piece of paper is asking for trouble.

Only secure systems should be trusted with your personal information:

  • encrypted password storage so not even the programmer of the system can read it.
  • SSL encrypted browser to server communications (padlock HTTPS:// in the URL) so that it is not compromised between your PC and the server
  • A ban on further attempts at password attempts after a small number of tries – five to ten attempts maximum.

Your information is probably already compromised

You must assume your password has already been found out and is available to many hackers. How?  Check this site to see where your details.

https://haveIbeenpwned.com

Put your email into the box and see the results showing how many sites, where you used that site, and what personal information has already been stolen and has been on sale for many months or years. Everyone should know this but we reckon nineteen out of twenty AXLR8 clients we show this to are completely unaware of how exposed they are.

Brute Force Dictionary Attack

Someone can easily guess my password?

There are hacking tools that attempt thousands of username and password combinations. Many of our servers that are open to the internet have 45,000 attempts per day which are blocked.

The way password guessing works is by using information already available to the hacker’s computer. Your name is an example so do not use your name with “123” after it. Further, your first & last name, school and many more pieces of personal information must be assumed to be known by hackers. If you have a word that is typically used in your password such as a pet name, animal, flower, place, or whatever, a “Dictionary” attack will probably find it by using a list of common words and configurations of those words. For example, Dictionary attacks are really good at words and phrases. They also check adding your date of birth and other information they have derived or purchased. Thus, if your password is made from the word Banana and your date of birth (in this example 10th November), you might make a password like “B4n4n4-1011” On the face of it, this is more than 8 characters and obeys many of the accepted rules from a few years ago.

Good dictionary attacks already have your date of birth, first pet’s name, primary school name, and many other answers to “hint” and “ID check” questions you might have entered in other sites as mentioned above.  Most know dates of birth and names of children, which are very common combinations for passwords. All know combinations of common passwords like “Secur1ty”, “pass1234”, “Password!” and “letmein” is well known. Similarly, although it is not the subject of this article, please do not keep your default firewall or blue tooth PIN as “1234” or “0000”. Also, obviously, do not make it the same as your bank PIN!

Yikes! What shall we do then?

Password reset

You should change your password now.

Dictionary attacks are very, very good at finding a word or phrase and number combination. However, they are unable to begin to guess at something you passed on the way to work, a randomly selected object in your house and a film you like or three things you saw on holiday or in a film plus your favourite actor.

Just choose three random words to make a memorable password and chuck  in some number(s)/non-alpha(s) characters.

e.g. apple sock ship might end up apple1812-$hipSocks.

Maximum password attempts is a good way to protect against such attacks.

In conclusion make sure your passwords obey the rules at the top of this page and, if you do nothing else, use three random words that only you would recall because only you saw a jaguar, a robin and a bike tyre puncture on your way to the shop this morning.

Repercussions

If it is your personal password for, say a private bank, game or subscription, you may lose money or pride. Worse is possible if someone steals your identity and commits criminal offences in your name. It is not enough to know you are not guilty. There are several cases where an innocent victim of such ID theft has been attacked by another victim of the crime. Lastly, if you are at work and responsible for other people’s data on a system and neglect your duty to create a secure password and keep it secret, you could damage many other people. This could happen if you are working on any accounts, CRM, HR system and many others.

Also, if you are an AXLR8 client running a business you have built up for years, you will need to make sure that you and your staff abide by these simple rules in a complex world.

If this raises any queries, please call AXLR8 support on 01344 776500 and we can help your Super Users with your system security and staff security training.

AXLR8 Public Sector Code Library

For around five years we have asked government clients to share their code and some notes and tips every time they use AXLR8 APIs. There was a slow start but people are quite enthusiastic now.

AXLR8 are collating code samples so that public sector organisations do not have to reinvent the wheel every time a new organisation writes an interface to (e.g.) the PDL API. This should help codify a scheme that has been running for a while informally.

  • Would it be helpful to see examples of other people’s code as we collect permissions from similar public sector businesses using AXLR8 APIs?
  • Once finished, could we have a copy of your code for the AXLR8 Public Sector Code Library?
  1. Who will have access?
    Just the direct programmer at the public sector organisation concerned. Reciprocation of their finished code into the PSCL will be assumed/ agreed. Programmers working for subcontractors will be asked to place their code in public ownership as a condition of participation and their employer will be copied in. Most will agree it of little cost and great benefit to all. The relevant code will be kept in our support KB and has been provided by email up to now. In future, we expect to load it on a data asset register with public sector restricted access.
  2. Will it be a security breach?
    Even if you give us the raw code, we will remove the credentials and replace them with “———”, or similar.
    Even your organisation need not be identified if you wish to replace your organisation’s specific URLs with e.g. “Devshire.gov.uk”
  3. Who owns the IPR?
    I see it as Crown Copyright in 100% of cases. We have had the odd situation where a subcontractor has been less than forthcoming with the code interfacing between a public sector website and our systems and this has been one of the main motivators for this PSCL project. We have no real way to enforce this if the purchasing business do not make it a condition of the offer of work or agree perhaps a smaller fee and release the subcontractor from the obligation. However, I believe the results they achieve for such a “saving” will be more costly in the end and less maintainable.
  4. What else do we need?
    It would be helpful to others to say what CMS your system works with and provide any other notes. Perhaps some notes on what you might have done if you had more time?
  5. What if my code was not as clean as I would have liked due to the time I was given?
    Your code is brilliant. Do not worry, it will help someone and all devs know they have done the same somewhere.

Any questions or comments, please contact AXLR8 Support on 01344 776500.