Skip to content

Adding websites to Cr3dOv3r

Karim shoair edited this page Nov 18, 2017 · 3 revisions

Cr3dOv3r is depending on login form to check if the login is successful or not without the need to search for a specific text.

To find the form it uses a valid CSS Selector but it should be a unique one that stays the same if the submitted credentials are wrong like action URL.

All the websites data are saved in a dictionary in websites.py file instead of making many config or text files and parse them and it's faster this way.

So basically what to do if you want to add some websites to the tool and maybe share it with me 😄

  • Choose a website you want to add to the tool and find the login form from the source.
  • To avoid the weird questions, of course, the form should be static for example the form can't be generated by javascript :3 .
  • Now the next part is so important the data you should add to websites.py from the source of a normal website with one form to add is a dictionary having the following values :
example = {
"url":"",     #The url of the login page
"form":"",    #The login form CSS Selector
"e_form":"",  #The email input name
"p_form":""   #The password input name
}

The following example is for facebook website :

facebook = { "url":"https://en-gb.facebook.com/login.php" ,
	"form":"#login_form",
	"e_form":"email" ,
	"p_form":"pass" }
  • And then add the website to websites dictionary as the key is the website name you want it to be displayed and it's value the dictionary example :
websites  = {
.
.
"Facebook ":facebook,
.
.
}
  • Now if the website uses to forms to log in like google as the first one to check the mail and the second to enter the password?

The answer is simple you will just add a dictionary with CSS Selector of the first form and the email input name that would be in it then the second one..etc example:

website = { 
"url":"" ,    #The url of the login page
"form1":'',   #The first login form CSS Selector
"form2":'',   #The second login form CSS Selector
"e_form":"",  #The email input name
"p_form":""   #The password input name
}

The following example is for google website :

google = { "url":"https://accounts.google.com/signin" ,
	"form1":'form[id="gaia_loginform"]',
	"form2":'form[id="gaia_loginform"]',
	"e_form":"Email",
	"p_form":"Passwd"}
  • After that you add the website as we said before but this time to custom_websites dictionary example :
custom_websites = {
.
.
"Google":google,
.
.
}
  • Next, start the tool and try it yourself 😄

New in version 0.2

Adding websites that using post requests

The same as before you have (url,e_form,p_form) as before but with a new key "verfiy" that it's value is list of words that if exist in the response page after submitting then login is not successful example :

mediafire = { "url":"https://www.mediafire.com/dynamic/client_login/mediafire.php" ,
	"e_form":"login_email" ,
	"p_form":"login_pass",
	"verfiy":["login"]#After submitting if this words exist in the response page then login not successful
	 }

After that add the website to "req_websites" dictionary example :

req_websites = { "Mediafire":mediafire
}

As you can see it's very simple any problem you can open an issue from Here And remember pull requests are always welcomed 😄