I have a router model C1000A company: CenturyLink Actiontec I bought it through eBay, my problem is that I can not connect to the Settings page because I do not have the admin password (the password is written on the label of the product but some characters have been deleted). enter image description here Some characters are well understood, but others can not identify, so I need help building complete combo fits all possible options.

My understanding: password contain 7 characters, What is not understandable is marked with an asterisk, **7k8*d

Thanks in advance. maor

  • This looks like it uses only lower case letters and numbers (set of 36). That still leaves 46656 combinations for the missing 3 characters. Assuming that it throttles password requests to 2 per second it will take, on average, 13 hours to crack (worse case 26). If you have to hand enter the passwords assume a LOT longer. Are you sure you don't want to just buy a new one?
    – AstroDan
    Commented Jan 20, 2016 at 21:58
  • 1
    It may be easier to contact CenturyLink and explain your problem. They may be able to help.
    – AstroDan
    Commented Jan 20, 2016 at 22:01
  • I tried. They say that the password is generated randomly, and they can not know it according to the serial number.
    – maor
    Commented Jan 20, 2016 at 22:30
  • 26 hours is not that bad. Can you help me with that?. How do I create such a combo file?.
    – maor
    Commented Jan 20, 2016 at 22:33
  • I noticed that neither the WiFi password nor the visible admin password contained capital letters, which I hope means that they are not used. If they are then this problem is going to be about 5 times harder to solve.
    – AstroDan
    Commented Jan 21, 2016 at 1:06

1 Answer 1


It looks like you may be in luck. Given the positioning the smudge for asterisk 2 is almost certainly a 7. Also the 3rd asterisk appears to be a lowercase rounded character. This narrows the password space down to (roughly) 360 passwords.

Below is a short C# program that I wrote. This will output all possible passwords (currently limited to what I think it likely is). You can extend the character sets as need be. To run this you can download LinqPad https://www.linqpad.net/Download.aspx (I used version 4) and run the part contained in the Start LinqPad and End LinqPad comments as a C# statement. Other wise you can run this in Visual Studio Community Edition from Microsoft (A much longer download). Note that these are both Windows programs (If you need Mac or Linux leave a comment).

Code begins here:

using System;
using System.IO;

namespace maorLostPassword
    class Program
        static void Main(string[] args)
        //Start LinqPad

        //write out to desktop
        string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

        //Add the character set here a-z, 1-10
        Array CharacterSet0 = ("abcdefghijklmnopqrstuvwxyz0123456789").ToCharArray();
        //This looks to be a 7, however I will leave this here incase it is not.
        Array CharacterSet1 = ("7").ToCharArray();
        //This looks like a lower case rounded letter add in the ones that you think it could be
        Array CharacterSet2 = ("acdeghopqs").ToCharArray();

        //Write this out to a text file
        using (StreamWriter writetext = new StreamWriter(path + "\\passwords.txt"))
            foreach (char i in CharacterSet0)
                foreach (char j in CharacterSet1)
                    foreach (char k in CharacterSet2)

                        //Reverse order to print in alp order
                        string password = i.ToString() + j.ToString() + "7k8" + k.ToString() + "d";
                        //write it out

        //end LinqPad


  • 2
    in bash (Linux): echo {{a..z},{0..9}}77k8{a,c,d,e,g,h,o,p,q,s}d
    – user15392
    Commented Jan 21, 2016 at 0:16
  • PowerShell: $x=' 77k8 d'.ToCharArray();97..122+48..57|%{$x[0]=[char]$_;[char[]]'acdeghopqs'|%{$x[5]=$_;$y=$x -join '';echo $y}} Perhaps could golf it a bit more if I were feeling particularly crafty.
    – Iszi
    Commented Jan 21, 2016 at 0:38
  • I suppose what @drewbenn and I are getting at is there's no need to put together a compiled program for the list generation, or pull in third-party tools. Built-in system shells and scripting languages will do just fine, and can be much more concise and less complex.
    – Iszi
    Commented Jan 21, 2016 at 0:44
  • Very true. I could have written a script instead. However I considered this a little more readable albeit a bit harder to use. I guess C# has become my go to hammer. Should I edit my answer to include scripting examples or leave it as is?
    – AstroDan
    Commented Jan 21, 2016 at 1:00

Not the answer you're looking for? Browse other questions tagged .