Element.scrollTo
var browserFetcher = Puppeteer.CreateBrowserFetcher();
var revisionInfo = await browserFetcher.DownloadAsync(533271);
var browser = await await Puppeteer.LaunchAsync(new LaunchOptions { ExecutablePath = revisionInfo.ExecutablePath});
взломщик просто отдает запрос SELECT * FROM customers; и получает список всех клиентов с паролями
<div>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
div {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-gap: 2px;
background: red;
}
span {
background: white;
height: 100px;
}
const userBallance = async () => {
return new Promise((resolve, reject) => {
try {
await Wallet.getBalance((err, balance) => {
if (err) {
reject(err);
}
else {
resolve(balance.accounts[0].balance.amount);
}
});
}
catch(err) {
reject(err);
}
});
};
console.log(await userBallance());