Skip to content

Commit

Permalink
change to window service
Browse files Browse the repository at this point in the history
  • Loading branch information
Epxir committed Aug 30, 2023
1 parent 7813de2 commit 63c2e34
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 7 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@

全流程实现,无需获取任何cookie和抓包

注册到window服务,高优先级自启

### 打包方式

```shell
Expand Down
11 changes: 9 additions & 2 deletions encrypt.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
from requests import post
import re
from requests import get,post
from urllib.parse import urlparse,parse_qs
from json import loads
from py_mini_racer import MiniRacer

def encryptedPassword(address,macStringTemp,password,queryString):
def encryptedPassword(password):
js_code = """
var $w ={};
Expand Down Expand Up @@ -686,6 +688,11 @@ def encryptedPassword(address,macStringTemp,password,queryString):
return passwordEncrypt;
};
"""
response = get('http://123.123.123.123/', verify=False)
url = response.text.split('\'')[1]
address = re.findall('https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+', url)[0]
queryString = url.split('?')[1]
macStringTemp=parse_qs(urlparse(url).query).get('mac')[0]
ctx = MiniRacer()
ctx.eval(js_code)
response = post(address+'/eportal/InterFace.do',params={'method':'pageInfo'},data={'queryString':queryString},verify=False,)
Expand Down
13 changes: 11 additions & 2 deletions gui.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import sys,win32con,win32api
import os,sys
from login import login
from tkinter import Tk,Label,Entry,Button,Checkbutton,IntVar
from encrypt import encryptedPassword
Expand All @@ -7,6 +7,14 @@ def click():
login(entry1.get(),entry2.get())
return

def service():
if checkvar.get() == 1 :
os.system('sc create ruijie binpath= "' + sys.executable + ' -u ' + entry1.get() + ' -e ' + encryptedPassword(entry2.get()) + '" start= auto')
else:
os.system('sc delete ruijie')
return

'''
def reg():
name = 'ruijie'
path = sys.argv[0] + ' -u ' + entry1.get() + ' -e ' + encryptedPassword(entry2.get())
Expand All @@ -18,6 +26,7 @@ def reg():
win32api.RegDeleteValue(key, name)
win32api.RegCloseKey(key)
return
'''

def gui():
window = Tk()
Expand All @@ -35,7 +44,7 @@ def gui():
button = Button(window, text="登录",command=click)
button.grid(row=3, column=1, pady=10)
checkvar = IntVar(master=window)
check = Checkbutton(window, text="开机自启", variable=checkvar, onvalue = 1, offvalue = 0, command=reg)
check = Checkbutton(window, text="开机自启", variable=checkvar, onvalue = 1, offvalue = 0, command=service)
check.grid(row=3,column=2)
window.mainloop()
return
4 changes: 1 addition & 3 deletions login.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
import re
from requests import get,post
from encrypt import encryptedPassword
from urllib.parse import urlparse,parse_qs

def login(userId,password) :
response = get('http://123.123.123.123/', verify=False)
url = response.text.split('\'')[1]
address = re.findall('https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+', url)[0]
queryString = url.split('?')[1]
if len(password)!=256:
macStringTemp=parse_qs(urlparse(url).query).get('mac')[0]
password = encryptedPassword(address,macStringTemp,password,queryString)
password = encryptedPassword(password)
params = {
'method': 'login',
}
Expand Down

0 comments on commit 63c2e34

Please sign in to comment.