Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Redisson | 20,864 | 864 | 181 | 8 hours ago | 188 | August 24, 2022 | 347 | apache-2.0 | Java | |
Redisson - Redis Java client with features of In-Memory Data Grid. Over 50 Redis based Java objects and services: Set, Multimap, SortedSet, Map, List, Queue, Deque, Semaphore, Lock, AtomicLong, Map Reduce, Publish / Subscribe, Bloom filter, Spring Cache, Tomcat, Scheduler, JCache API, Hibernate, MyBatis, RPC, local cache ... | ||||||||||
Phpredis | 9,623 | 7 hours ago | 131 | other | C | |||||
A PHP extension for Redis | ||||||||||
Tomcat Redis Session Manager | 1,782 | 3 months ago | 43 | mit | Java | |||||
Redis-backed non-sticky session store for Apache Tomcat | ||||||||||
Ibase4j | 1,544 | 2 years ago | 17 | apache-2.0 | JavaScript | |||||
Spring,SpringBoot 2.0,SpringMVC,Mybatis,mybatis-plus,motan/dubbo分布式,Redis缓存,Shiro权限管理,Spring-Session单点登录,Quartz分布式集群调度,Restful服务,QQ/微信登录,App token登录,微信/支付宝支付;日期转换、数据类型转换、序列化、汉字转拼音、身份证号码验证、数字转人民币、发送短信、发送邮件、加密解密、图片处理、excel导入导出、FTP/SFTP/fastDFS上传下载、二维码、XML读写、高精度计算、系统配置工具类等等。 | ||||||||||
Redis Store | 1,480 | 4,372 | 21 | a month ago | 32 | June 22, 2020 | 2 | mit | Ruby | |
Namespaced Rack::Session, Rack::Cache, I18n and cache Redis stores for Ruby web frameworks | ||||||||||
Sessions | 1,158 | 68 | 174 | 10 days ago | 17 | April 17, 2022 | 92 | mit | Go | |
Gin middleware for session management | ||||||||||
Redis Rails | 952 | 4,902 | 19 | 5 months ago | 19 | April 06, 2017 | 1 | mit | Ruby | |
Redis stores for Ruby on Rails | ||||||||||
Memcached Session Manager | 736 | 11 | 5 | 3 years ago | 29 | November 29, 2018 | 84 | apache-2.0 | Java | |
A tomcat session manager that backups sessions in memcached and pulls them from there if asked for unknown sessions | ||||||||||
Gourdscanv2 | 683 | 5 years ago | 10 | gpl-2.0 | Python | |||||
被动式漏洞扫描系统 | ||||||||||
Rucaptcha | 666 | 110 | 1 | 3 months ago | 56 | January 27, 2021 | 10 | mit | Ruby | |
Captcha Gem for Rails, which generates captcha image by Rust. |
SeleniumWebdriver JavaScript
** Selenium **
** JavaScript **
JavaScript JavaScript JavaScript
**** Network Name accLoginPC.do
URL https://xxx.xxx/webapi/accLoginPC.do
Form Data appId``loginName``loginPwd``geetest_challenge
CN-S513...
geetest_
**** geetest_validate
geetest_seccode
geetest_seccode
|jordan
challenge/validate
loginPwd``jtSafeKey``token
XX
ajax.php?
json validate geetest_validate
gtchallengelangw callback w
JavaScript ...
slide.xxx.js
Chrome Sources JavaScript
JavaScript
Unicode challenge
JavaScript copy Unicode Unicode challenge
UtTS
JavaScript
var xow_list = uklgT.xow
function tPcX(e) {
var SkB = uklgT.yaA()[0][22];
for (; SkB !== uklgT.yaA()[16][19]; ) {
switch (SkB) {
case uklgT.yaA()[0][22]:
var t = this;
var r = e["DxJq"];
SkB = uklgT.yaA()[0][21];
break;
case uklgT.yaA()[16][21]:
r["height"] = r["width"] = 0;
t["vjyG"] = r["getContext"]("2d");
SkB = uklgT.yaA()[4][20];
break;
case uklgT.yaA()[4][20]:
t["wOTb"] = t["xmDd"] = t["yZRm"] = t["AZ_O"] = 0;
t["BnKG"] = r;
SkB = uklgT.yaA()[4][19];
break;
}
}
}
function tPcX(e) {
var t = this;
var r = e["DxJq"];
r["height"] = r["width"] = 0;
t["vjyG"] = r["getContext"]("2d");
t["wOTb"] = t["xmDd"] = t["yZRm"] = t["AZ_O"] = 0;
t["BnKG"] = r;
}
JavaScript slide.js/fullpage.js JavaScript
JavaScript JavaScript
Chrome
a a get_a()
JavaScript Python PyExecJS JavaScript
def get_js_object(js_file_path):
"""js"""
with open(os.path.dirname(__file__) + js_file_path, encoding='GBK') as f:
js_file = f.read()
return execjs.compile(js_file)
pwd_encrypt_js = get_js_object(pwd_encrypt_js_path)
full_page_t1_js = get_js_object(full_page_t1_js_path)
full_page_w1_js = get_js_object(full_page_w1_js_path)
full_page_w2_js = get_js_object(full_page_w2_js_path)
u_js = get_js_object(u_js_path)
slide_u_js = get_js_object(slide_u_js_path)
slide_a_js = get_js_object(slide_a_js_path)
def get_encrypt_pwd(pwd):
""""""
return pwd_encrypt_js.call('pwdEncrypt', pwd)
def get_full_page_t1(s):
"""fullpaget1"""
return full_page_t1_js.call('get_t', s)
def get_full_page_w1(gt, challenge, s):
"""fullpagew1"""
t = get_full_page_t1(s)
return full_page_w1_js.call('get_w', gt, challenge, s, t)
def get_full_page_w2(gt, challenge, s):
"""fullpagew2"""
return full_page_w2_js.call('get_w', gt, challenge, s)
def get_slide_w(gt, challenge, s, offset, track):
"""slidew"""
u = {
'lang': 'zh-cn',
'userresponse': u_js.call('getUserResponse', offset - 1, challenge),
'passtime': track[-1][-1],
'imgload': random.randint(110, 180),
'a': u_js.call("mouse_encrypt", track),
'ep': {"v": "1.2", "f": u_js.call("lmWn", gt + challenge)},
'rp': u_js.call("lmWn", gt + challenge[0:32] + str(track[-1][-1]))
}
u = slide_u_js.call('_encrypt', u, s)
a = slide_a_js.call('get_a', s)
return u + a
get_slide_w()
offset track offset
URL JavaScript
**** 100%
** Session ** Session 2
Session/( XX )
Redis Sorted Sets zset Sessionzset scorezset score zrevrange
session zremrangebyscore
2020-04-01 15:38:57 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/bg/0acfd4d64.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/1e6ca4d3f.jpg
2020-04-01 15:39:00 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:00 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:01 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:01 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '49bf36f101312f382b66670af7a6061f', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:03 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/61ffa98e8/bg/8627cc65f.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/61ffa98e8/61ffa98e8.jpg
2020-04-01 15:39:04 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '2241ffcb990425fd1f4d93a06dd1ffb1', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:05 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '8f6168ebdfd8561d6f14d2d8973dcaa3', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:05 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '9926b4297f6ed6df614e68dafafa58e6', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:06 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/d49a453dc/bg/fc62c5927.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/d49a453dc/d49a453dc.jpg
2020-04-01 15:39:06 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:06 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/cac640dea/bg/ec34f0e13.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/cac640dea/cac640dea.jpg
2020-04-01 15:39:06 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/ebc5e54b4/bg/ca96d4224.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/ebc5e54b4/ebc5e54b4.jpg
2020-04-01 15:39:11 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:11 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:11 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '61556a44d32a9786b61ab8afbea3989b', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:11 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:12 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/cd0bbb6fe/bg/2f991caf7.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/cd0bbb6fe/cd0bbb6fe.jpg
2020-04-01 15:39:15 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '0df340035700753080348c13eadacbd4', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:15 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:15 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '5c192a8d548da735c393fce93df17b00', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:15 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '9389c0cefacfca69e39ab2aee20b4fda', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:17 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/bg/2a98c1588.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/1e6ca4d3f.jpg
2020-04-01 15:39:17 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/bg/5283e2318.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/1e6ca4d3f.jpg
2020-04-01 15:39:17 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/9264fff13/bg/2e0bb3330.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/9264fff13/9264fff13.jpg
2020-04-01 15:39:20 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '9e532863e31fc59138438fba5d19b6ea', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:21 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:22 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:22 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:22 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/bg/b0dbbc9c5.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/1e6ca4d3f.jpg
2020-04-01 15:39:25 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:26 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '2e5da172682aade75ac8482b74a7a074', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:26 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '280aaee468f6e344c72e2e4408062405', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:27 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '9d5e8bfe23eeec059dd79d890c83d6d7', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:28 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/61ffa98e8/bg/285b1330f.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/61ffa98e8/61ffa98e8.jpg
2020-04-01 15:39:28 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/e840d69cc/bg/6c86e0ad3.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/e840d69cc/e840d69cc.jpg
2020-04-01 15:39:28 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/e44c02efd/bg/de65f3a21.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/e44c02efd/e44c02efd.jpg
2020-04-01 15:39:30 geetest_session.py [line:46] INFO: gt/challenge{'challenge': 'd6062fc656baa01571ee5245831e4496', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:32 geetest_session.py [line:154] INFO: sessionResp.TRACK_ERR
2020-04-01 15:39:32 geetest_session.py [line:167] ERROR: session
2020-04-01 15:39:32 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:32 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/bg/90861c73f.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/1e6ca4d3f/1e6ca4d3f.jpg
2020-04-01 15:39:33 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:35 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:36 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '0b0ac922cf5fe2d5b9060dd423dc4e23', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:36 geetest_session.py [line:46] INFO: gt/challenge{'challenge': '9c2c6c18f9adbb8db92b3ecc644f2f9e', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:37 geetest_session.py [line:46] INFO: gt/challenge{'challenge': 'ac1a20b54708caf252eb28a236da7ce8', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:38 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/cd0bbb6fe/bg/723c2109a.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/cd0bbb6fe/cd0bbb6fe.jpg
2020-04-01 15:39:39 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/e44c02efd/bg/f95abf82a.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/e44c02efd/e44c02efd.jpg
2020-04-01 15:39:39 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/9264fff13/bg/0e2c237a6.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/9264fff13/9264fff13.jpg
2020-04-01 15:39:40 geetest_session.py [line:46] INFO: gt/challenge{'challenge': 'b0366c16750ccaef2366d07806e643ca', 'gt': '29414567350546096e14bb2bc6319ae1', 'success': 1}
2020-04-01 15:39:43 geetest_session.py [line:116] INFO: ,bg_url:https://captcha-static.pingan.com/pictures/gt/e840d69cc/bg/a310a9fa0.jpg, full_bg_url:https://captcha-static.pingan.com/pictures/gt/e840d69cc/e840d69cc.jpg
2020-04-01 15:39:43 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:43 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:44 geetest_session.py [line:154] INFO: sessionResp.SUCCESS
2020-04-01 15:39:46 geetest_session.py [line:154] INFO: sessionResp.SUCCESS