Python code to login to Mikrotik WebClient without GUI
Project description
Python Mikrotik WebClient WiFi Login
This is a python code to login to wifi Mikrotik Webclient for devices that has no access to GUI (such as headless Raspberry Pi, or Linux Terminal). Mikrotik Webclient is using unique keys or salts generated randomly at some time interval, this program is made to find that unique keys or salts and combine it with username and password to make final login request.
Installing the package
using pip
pip install python-mikrotik-login
using git
pip install git+https://github.com/castrix/Python-Mikrotik-WebClient-WiFi-Login
Using the program
First import the module
from python_mikrotik_login import MikrotikLogin
login = MikrotikLogin("username","password","http://url") #you can leave the unique key index empty or set it manually
login.do_login()
print(login) # to see status
Arguments
MikrotikLogin(username_string, password_string, url_string, minkey1_integer_optional, maxkey1_integer_optional, minkey2_integer_optional, maxkey2_integer_optional)
if you are still confused, see the Example
How this works
This code works by finding the unique key from the Mikrotik Web Client and then combine it with username and password then send back the post
request to the Mikrotik Web Client.
Finding the unique key
For the example this is the function where the login action is fired:
function doLogin() {
document.sendin.username.value = document.login.username.value;
document.sendin.password.value = hexMD5('\340' + document.login.password.value + '\043\242\062\374\062\365\062\266\201\323\145\251\200\303\025\315');
document.sendin.submit();
return false;
}
In this case you should find the index of:
\340
and
\043\242\062\374\062\365\062\266\201\323\145\251\200\303\025\315
where:
\340 is the first unique key or salt
\043\242\062\374\062\365\062\266\201\323\145\251\200\303\025\315 is the second unique key salt
Contributors
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file python-mikrotik-login-3.0.4.tar.gz
.
File metadata
- Download URL: python-mikrotik-login-3.0.4.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9fbfe5ae57580b9fa8a332b9809188d231755fe7f460ee41bdca787d62603cf9 |
|
MD5 | 92203d7ae4d2ac3f92ad4cacbc8c2f11 |
|
BLAKE2b-256 | d6b687f121dfa11c018dc9daa1b8d2007806b6f4d152a70427b1c22bcd79a5fe |
File details
Details for the file python_mikrotik_login-3.0.4-py3-none-any.whl
.
File metadata
- Download URL: python_mikrotik_login-3.0.4-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e141e9b536b91b469009ef85b899f2b80676f098a9113e6d259fb876ed9042d3 |
|
MD5 | 82a730fa20e00b862ec1f6d28c9ab441 |
|
BLAKE2b-256 | 1ca11dba90aa6223943ca6dce4365f7a43a795176c15096199042154a748066d |