Created
July 1, 2023 03:55
-
-
Save Fweak/b59ca038289d95e371f6fc440ca2406b to your computer and use it in GitHub Desktop.
Kick Fingeprinting system... (is it fpjs)?? You dont even need to provide fingerprint just pass empty string and it works...
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const renderer = (() => { | |
const canvas = document.createElement('canvas'); | |
const context = | |
canvas.getContext('webgl') || | |
canvas.getContext('experimental-webgl'); | |
if (!context) return null; | |
const renderer = context.getExtension('WEBGL_debug_renderer_info'); | |
if (!renderer) return null; | |
return { | |
vendor: context.getParameter(renderer.UNMASKED_VENDOR_WEBGL), | |
renderer: context.getParameter( | |
renderer.UNMASKED_RENDERER_WEBGL | |
), | |
}; | |
})(); | |
const battery = (async () => { | |
let battery; | |
if ('getBattery' in navigator) battery = await navigator.getBattery(); | |
else return null; | |
return { | |
level: battery.level, | |
charging: battery.charging, | |
chargingTime: battery.chargingTime, | |
dischargingTime: battery.dischargingTime, | |
}; | |
})(); | |
const navConnection = (() => { | |
const conn = | |
navigator.connection || | |
navigator.mozConnection || | |
navigator.webkitConnection; | |
return { | |
type: conn ? conn.type : null, | |
effectiveType: conn ? conn.effectiveType : null, | |
downlink: conn ? conn.downlink : null, | |
rtt: conn ? conn.rtt : null, | |
}; | |
})(); | |
const canSetLocalCookie = () => { | |
try { | |
return ( | |
localStorage.setItem('test', 'test'), | |
localStorage.removeItem('test'), | |
!0 | |
); | |
} catch { | |
return !1; | |
} | |
}; | |
const canSetSessionCookie = () => { | |
try { | |
return ( | |
sessionStorage.setItem('test', 'test'), | |
sessionStorage.removeItem('test'), | |
!0 | |
); | |
} catch { | |
return !1; | |
} | |
}; | |
const isInExtensionEnv = () => { | |
const userAgentLow = window.navigator.userAgent.toLowerCase(); | |
switch (true) { | |
case userAgentLow.includes('chrome'): | |
return ( | |
window.chrome !== void 0 && | |
window.chrome.webstore !== void 0 | |
); | |
case userAgentLow.includes('firefox'): | |
return window.InstallTrigger !== void 0; | |
case userAgentLow.includes('safari'): | |
return window.ApplePaySession !== void 0; | |
} | |
}; | |
const canvasData = () => { | |
const canvas = document.createElement('canvas'); | |
const context = canvas.getContext('2d'); | |
context && context.fillText('!kickCE0105', 0, 0); // same one even old version of kick | |
return canvas.toDataURL(); | |
}; | |
/** | |
* const n = Date.now() | |
, i = this.mouseMovements[this.mouseMovements.length - 1]; | |
let r = 0; | |
if (i) { | |
const s = n - i.s | |
, l = Math.sqrt((e.clientX - i.x) ** 2 + (e.clientY - i.y) ** 2); | |
r = s > 0 ? l / s : 0; | |
const c = 10 | |
, d = 100; | |
if (l < c || s < d) | |
return | |
} | |
const a = { | |
x: e.clientX, | |
y: e.clientY, | |
s: n, | |
t: r | |
}; | |
this.mouseMovements.push(a), | |
this.mouseMovements.length > 10 && (this.mouseMovements = this.mouseMovements.slice(-10)) | |
*/ | |
const mouseMovements = [ | |
{ | |
x: 1026, | |
y: 1016, | |
s: 1688181395625, | |
t: 2.358474082961269, | |
}, | |
{ | |
x: 1006, | |
y: 1057, | |
s: 1688181395759, | |
t: 0.3404326784464789, | |
}, | |
{ | |
x: 1016, | |
y: 1052, | |
s: 1688181395929, | |
t: 0.06576670522058205, | |
}, | |
{ | |
x: 1024, | |
y: 1040, | |
s: 1688181396044, | |
t: 0.12541047914657352, | |
}, | |
{ | |
x: 765, | |
y: 829, | |
s: 1688183440813, | |
t: 0.00016337730823290576, | |
}, | |
{ | |
x: 942, | |
y: 844, | |
s: 1688183440913, | |
t: 1.7763445611704956, | |
}, | |
{ | |
x: 1096, | |
y: 878, | |
s: 1688183441016, | |
t: 1.5311513789294229, | |
}, | |
{ | |
x: 1017, | |
y: 972, | |
s: 1688183441116, | |
t: 1.2278843593759146, | |
}, | |
{ | |
x: 1010, | |
y: 1062, | |
s: 1688183441233, | |
t: 0.771553946740855, | |
}, | |
{ | |
x: 1013, | |
y: 1044, | |
s: 1688183441398, | |
t: 0.11059568236905853, | |
}, | |
]; | |
const payload = [ | |
canvasData(), | |
navigator.userAgent, | |
navigator.language, | |
navigator.platform, | |
new Date().getTimezoneOffset(), | |
`${window.screen.width}x ${window.screen.height}`, | |
[].map((ie) => `${ie.x}.${ie.y}.${ie.t}.${ie.s}`).join('|'), // MouseMovements | |
!!window.navigator.webdriver, | |
Object.getOwnPropertyDescriptor(window.navigator, 'languages') !== | |
void 0, | |
Object.getOwnPropertyDescriptor(window.navigator, 'plugins') !== void 0, | |
[ | |
'indexedDB' in window, | |
'openDatabase' in window, | |
'navigator.hardwareConcurrency', | |
'navigator.getGamepads', | |
'window.WebGLRenderingContext', | |
].filter((ie) => !ie).length, | |
isInExtensionEnv(), | |
renderer.vendor, | |
renderer.renderer, | |
window.screen.width, | |
window.screen.height, | |
window.outerWidth, | |
window.outerHeight, | |
window.innerWidth, | |
window.innerHeight, | |
battery.level, | |
battery.charging, | |
battery.chargingTime, | |
battery.dischargingTime, | |
navConn.type, | |
navConn.effectiveType, | |
navConn.downlink, | |
navConn.rtt, | |
canSetLocalCookie(), | |
canSetSessionCookie(), | |
navigator.cookieEnabled, | |
]; | |
const payloadEncoded = new TextEncoder().encode(payload); | |
const payloadToBase64 = btoa( | |
String.fromCharCode.apply(null, new Uint8Array(payloadEncoded)) | |
); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment