BytePhoenixCoding / BlockchainTokenSniper

Please see website / Telegram group for more details.
473 stars 286 forks source link

mini audit additional scan requested #11

Closed winkelermatthias closed 3 years ago

winkelermatthias commented 3 years ago

Seeing a few rugs happening where tokens get trasnfered and sold from burn address somehow. Do not know the exact details here and might be misinterpreting the issue:

see chart with just a few transactions before rugpul: https://poocoin.app/tokens/0x9a1a8046d2648bd101c3bd6c6746055418686b7d

the trasnaction that kills it: https://bscscan.com/tx/0x0f218d5aece288d4223d232c10d5b603467cbf4a6af9777dbfd9062feef709af

Could it be related to this: https://ethereum.stackexchange.com/questions/98215/why-is-it-considered-a-bad-practice-to-burn-tokens-to-0x0-when-creating-an-erc20

Any way we can write a function to check for the inproper implementation of burn ?

Anyway thanks for opensourcing this, this is great work!

geeks121 commented 3 years ago

Great idea .. and dx timelock too i thing,,

crypto-MMXXII commented 3 years ago

Hi therfore I have added the following into the sniper. i don´t want any tokens that have solidity 4 or 5 so they get ignored and fail. I have tested it and it works.

I added the following:

config.json - > "checksolidity4": "True" at last line. then bscsniper.py - > Line 98 : checksolidity4 = obj['checksolidity4'] Then in the mini audit: elif ("0.4." in str(tokenContractCode['result'][0]['SourceCode'])) or "0.5." in str(tokenContractCode['result'][0]['SourceCode']) and checksolidity4 == "True": #check if solidity is 4.xx print(style.RED + "[FAIL] Contract uses wrong solidity.")

cehck: https://bscscan.com/address/0x26465EaB74FcDe4a29e613Af5Eb03cE907e43d8E#code

Works for me: grafik

hope it helps. Now the mint funtkion is nor propor anymore because it scans for the word mint and all the enw reward tokens have this funktion so i am currently checking that too.

geeks121 commented 3 years ago

can you pull it

winkelermatthias commented 3 years ago

I am testing it today, already running for an hour. Is this resolving the previous dumps as in the above transaction at requesT? So far it seems to be working as the 3 projects i bought into havent dumped to 0. Awesome!

geeks121 commented 3 years ago

I am testing it today, already running for an hour. Is this resolving the previous dumps as in the above transaction at requesT? So far it seems to be working as the 3 projects i bought into havent dumped to 0. Awesome!

may you add to test solidity5 or 6

geeks121 commented 3 years ago

use small amount only ,, for testing i use 0.01 usd each token i buy

geeks121 commented 3 years ago

Hi therfore I have added the following into the sniper. i don´t want any tokens that have solidity 4 or 5 so they get ignored and fail. I have tested it and it works.

I added the following:

config.json - > "checksolidity4": "True" at last line. then bscsniper.py - > Line 98 : checksolidity4 = obj['checksolidity4'] Then in the mini audit: elif ("0.4." in str(tokenContractCode['result'][0]['SourceCode'])) or "0.5." in str(tokenContractCode['result'][0]['SourceCode']) and checksolidity4 == "True": #check if solidity is 4.xx print(style.RED + "[FAIL] Contract uses wrong solidity.")

cehck: https://bscscan.com/address/0x26465EaB74FcDe4a29e613Af5Eb03cE907e43d8E#code

Works for me: grafik

hope it helps. Now the mint funtkion is nor propor anymore because it scans for the word mint and all the enw reward tokens have this funktion so i am currently checking that too.

hi .. i added your script to my bscsnip fork and credited to you..

just neee another feature like timelock.. or token with limited token supply

Sani0 commented 3 years ago

Hey guys,

i have these error when i'm using checksolidity but it's works without. anyone do know why ?

Thanks ! Issue

geeks121 commented 3 years ago

Hey guys,

i have these error when i'm using checksolidity but it's works without. anyone do know why ?

Thanks ! Issue

you missing checksolidity4 in config.json

for example see in my fork for config.json with checksolidity4

Sani0 commented 3 years ago

i confirm checksolidity4 is in config.json but still have the same messages

geeks121 commented 3 years ago

i confirm checksolidity4 is in config.json but still have the same messages

you miss coma after add the checksolidity.. go check again.

Sani0 commented 3 years ago

Oh true ! Thanks alot ! it's works.

Just a last question what we need to put for gas fee ? leave it to 300000 ? i have only transaction failed and have 0.2 bnb in wallet any tips ?

BytePhoenixCoding commented 3 years ago

I would just leave it at 300000 always works for me. What do u mean by only transaction failed

Sani0 commented 3 years ago

I mean all the contract who pass the miniaudit result to transaction failed but counted as tokens bought do u guys have alot on failed ? or it's normal to have some failed and maybe one will be ok ?

Buco11-dev commented 3 years ago

Side note guys: Check the transaction confirmation section. I noticed it confirms failed transactions as successful because it always returns a 1. To Fix: Add ['result'] before ['status'] in txResult. e.g. txResult = checkTransactionRequest.json()['result']['status']

Buco11-dev commented 3 years ago

Question for everyone who has tried and tested the bot:

1.) Is the bot affected by the tax system most of these meme coins have built-in their smart contracts?

2.) I assume the bot is not affected by slippage since it's almost instant, however, some meme coins would specify minimum slippage eg 12% or so. Is the bot affected by this?

Also if you could help me with this inquiry on stack, I'd really appreciate it https://stackoverflow.com/questions/68899410/check-if-wallet-is-approved-to-spend-token

Insights will be very much appreciated, thanks!

geeks121 commented 3 years ago

the bot not yet implement tax system.. for now it still based on mini audit and minimum liquidity