This user Mhmd_Bakr has cheated very badly that he became specialist, he only obfuscates his code and it is obvious since he adds huge number of useless comments and strange code with color.white(), color.cyan() , unnecessary classes and STLs as in submissions; 182524617 ,and last round : 1764C 182697157. He even got skipped verdicts before due to cheating in div2 #833 with 180653605 , 180635849. I wonder what he and the one he cheats from gain from this?
Nevertheless, this cheater had a previous account named AlgoTurtle and had been PLAGGED 4 times due to cheating. You can find similar template, obfuscation style in both accounts, take for example 176022369 and 175641827. Also, both accounts had been assigned to the same organization; FCI Kafrelsheikh University, but he removed from AlgoTurtle, but still there in Mhmd_Bakr. He cheats in almost all the rounds but gets caught in 10% only with his new account Mhmd_Bakr, became an experienced cheater and plag evader xD, so that's the reason I have written the blog as I hope to contribute to cleansing the codeforces community from those idiotic cheaters as they really harm other hardworking people's rank and effort.
Really, cheating does wonders in only 11 contests, he managed to be a specialist WOW ! Also, why false positives take place like that BLOG for silvermax and on the other hand, cheaters continue cheating from multiple accounts without getting penalised? why there isn't an IP BAN not only an account ban to avoid those cheaters spoiling the community every now and then?
He is not skipped yet. I don't know for how long will those idiotic cheaters fool the system by adding useless parts and useless comments, and make people's rating suffer! I hope Mr.MikeMirzayanov or any moderator to do a manual check on those accounts Mhmd_Bakr and AlgoTurtle skip such dishonest person and his likes since he is spoiling the competition for fair contestants.
UPD : Thanks Sir MikeMirzayanov for your justice, now leaderboards are fine and all those cheaters skipped. You are a JUST man and CODEFORCES will remain the most prominent CP platform, where there is NO place for cheaters. I'm full of PRIDE that I helped the community to cleanse cheaters and that my time doing this wasn't in vain. Congratulations Mhmd_Bakr for getting skipped in two very recent contests Global round 24 and div2 #836. Warn your cheater pupil friend Elsaghir not to cheat again. I guess he cheated in a clever way last global round. Anyways, I'm happy to have helped the community. I love codeforces <3
(deleted by popular demand)
Why are you wasting your time by writing these comments you better go and solve some problems!
To the point. Actually, blogs like this reduce cheaters and put psychological pressure on them beyond exposure and the chance of them getting banned ^^.
There were cheaters in cp for as long as I remember, even before codeforces. You can't fight them one by one with such posts, it doesn't scale. You get one banned, ten more remains/show up. It's more of a platform/competition format problem, and unfortunately for online mostly anonymous any-can-participate contests it's a fact of life, part of the game. Ignore then and go solve contests. Why do you care if you never participate, still unrated?
As a general solution, your heuristic "huge number of useless comments and strange code..., unnecessary classes and STLs as in submissions" isn't useful for catching cheaters — too many false positive. Lots of people's template have everything and a kitchen sink in them
You're right, i shouldn't.
It wasn't in vain bro. His two mentioned submissions in the blog above got SKIPPED and he got minus on those rounds.
And next contest there will be ten more in his place, so then what? Ten more blog posts? Calling off cheaters one by one doesn't scale.
It could scale if codeforces wouldn't make it so difficult to retrieve submissions, automated tools can be done to analyze the code even AI based ones.
Excellent suggestion imo.
Codeforces is very scrapable, you can easily find readily available scraper code and datasets using your favorite search engine — nothing stops you from build your ai. For example start with https://github.com/deepmind/code_contests — see, everything's open. If you manage to build something useful, surely you can talk to mike about integrating it into the site later for live contests.
Anyway my point is i wouldn't want to see a topic like this one every time Rshittttt finds another cheater. That doesn't scale.
Codeforces was very scrapable in the past, not anymore, some changes were made to the site to prevent it, now the site doesn't even work with text browsers.
Check the following links:
https://mirror.codeforces.com/blog/entry/109560
https://mirror.codeforces.com/blog/entry/109431
The ?f0a28=1 redirect is very, very easy to overcome when scraping and it's therefore very unlikely that scraping was the reason for this behavior (or that scraping was even considered).
If you read the code you can see what it actually does. The server basically asks you to complete a cryptographic operation and save the result to a cookie. At least one parameter appears to depend on your IP address or similar. The server already knows the answer to that operation and will let you in only if you have the correct cookie.
Why does it exist? My guess is that it is homemade DDoS protection. To scrape, you just have to do what the browser does. In this case, it is easy to do so. Really.
Your second link mentions CSRF tokens. CSRF tokens have exactly nothing to do with preventing scraping (and again, they are easy to bypass for scraping). CSRF protection is a security feature. If Codeforces did not use them, I could potentially do bad stuff from your account by simply having you visit a malicious site.
A young girl was walking along a beach upon which thousands of cheaters had been washed up during a terrible storm. When she came to each cheater, she would pick it up, and ban it back into the ocean. People watched her with amusement.
She had been doing this for some time when a man approached her and said, “Little girl, why are you doing this? Look at this beach! You can’t ban all these cheaters. You can’t begin to make a difference!”
The girl seemed crushed, suddenly deflated. But after a few moments, she bent down, picked up another cheater, and banned it as far as she could into the ocean. Then she looked up at the man and replied,
“Well, I made a difference for that one!”
The old man looked at the girl inquisitively and thought about what she had done and said. Inspired, he joined the little girl in banning cheaters back into the sea. Soon others joined, and all the cheaters were banned.
Hats off for you sir. Brilliant comment and a good morale. "Soon others joined, and all the cheaters were banned." I think yes if many people, each by the submissions he check, help the system, codeforces can SKIP and BAN more cheaters.
Hope more people can see this post.
Hope so, please do up.
what is a skipped verdict exactly?
After codeforces' plagiarism checker runs every contest. Unoriginal or copied solutions by cheaters are skipped (no longer in competition and they may even get reduced in points due to cheating) like what happened to this blog's cheater Mhmd_Bakr friend Elsaghir, he got -121 in div2 #824
ohk!!!i hope this post stops others from doing the same..
Hope so. Good luck with your CP journey brother, study hard and do regular practice and never be like those cheaters.
He avoided the plagiarism detector until you called him out right?
Perhaps if codeforces didn't make it so hard to be able to review submissions more cases like this could be detected.
On his new acc, he got caught only 1 time, but u can see in the last contest he clearly obfuscates 182524617, but not caught yet. I hope he gets skipped for the last contest.
However, your suggestion is great, reviewing and easy access to the api would help detect more cases like this. You can tag Mr.MikeMirzayanov in your blog
It's hard to believe that choice was made by accident. There are several measures preventing someone from accessing the submission in a practical way.
Why Am I getting downvoted? for exposing cheaters?
Because apparently there are a lot of them and they don't like to be exposed
I think so. fck cheaters. That shameless guy commented down using his old account saying he is not banned xD I wonder why didn't codeforces ban him after 4 skips, idiot Mhmd_Bakr and AlgoTurtle xD
-First I’m not banned. -Second if i use his template for CP not mean that I’m he! -Third every thing he put in his code like (color class), he used it for foreground color to debug code by his way not puts it from nothing. -Fourth if he got specialist in one month doesn’t mean he is gain it by cheating, simply maybe he being in another CP site or something, I don’t know if he cheat or you’re right. But everyone have right to put anything he want in his code the point is (you got input, you should produce right output) what you need from his code to be understandable or not? Sometimes people who do like you be need to cheat but in a creative way (from your real account) but when you true to show his good in room when you be with him randomly you try lock your problem and get his solution to avoid skip your solution and send it to another person for another problem code but you fail to understand it.. that is why I got skipped before maybe you’re one of them people, maybe he try make code unreadable to avoid anyone to take his code and get skipped, and one of contests he enter he got skipped probably from that thing, But the really thing I wonder about you put submissions of himself, where is the source of cheating he done?
-Finally I hope MikeMirzayanov to stop hacking phase during contests because of room and lock code problem I see people say something like that before.
Oh Mr. Naive Shameless Cheater. Despite cheating 4 times, you still NOT banned! ok i updated the blog xD Can you explain why both accs are from the same organization FCI Kafrelsheikh University?
However, the arguments you present in this ill posed comment are too weak bro. Better luck cheating from a new account. I hope your Mhmd_Bakr gets skipped Finally, fuck dirty cheaters
Thanks for mentioning what happened to me, but till now no action has been taken to solve my problem :(
May a moderator review your case again. Good luck.
I'm actually pretty surprised he doesn't have a higher rating if he's cheating.
I guess you can only do worse than the person who's giving you code and they rarely have a high rating?
Please evaluate my account for cheating.
Thanks.
Your submissions are legit. I think you're a fair contestant and a hard-worker. Keep it up. never be like cheaters Mhmd_Bakr, xypnx or Elsaghir.
You're welcome.
Imagine being so bad that you are still a cyan even after cheating! LOL
BARELY cyan xD! Lower specialist 1409 despite all this cheating haha.
I can't understand why confusion is equivalent to cheating — because it is possible that he is preventing being hacked. Or is it cheating to prevent being hacked by confusion?
It is so evident. Obfuscating and confusing (cheating) to avoid getting skipped. However, I don't see confusion to prevent being hacked is a valid claim. There are system tests which would run anyways and if your solution fails on a hack then it would fail the system tests and lose the points.
Actually no, Then why do hacks exist? Sometimes even system tests are weak for some codes (Whether its a bug or a TLE the code can have), If this code gets hacked successfully by a specific test, this test gets added to the system tests, this is how it works in EDU rounds at least, I am not sure about other rounds
Anyways, Whether the purpose was cheating or just make it harder to read and hack, Yes obfuscation is still not allowed
Yeah. I meant the fact that Hacks are added to systests. A Hack may be specific to certain code like what MinaRagy06 mentioned, but usually that isn't the case and it's general about a tricky case in the problem that the code didn't include and many other codes also didn't include. So for example this problem. Many were hacked during live contest, but some weren't hacked and then failed the system tests. If they made their code harder to read, would that prevent their WRONG ANS ON 10? NO. Also, for that cheater, i think making the code harder to read isn't the case at all, he had been skipped multiple times and on different accs, you can check other blogs here specifying his cheating and Finally as u said, whether the purpose being harder to hack or cheating. OBFUSCATION isn't allowed by rules.
I'm not defending him but as Yahia_Emara mentioned there could be a particular bug in your code that is not in any other code.
For example I've hacked this submission https://mirror.codeforces.com/contest/1764/submission/182664408 in the last 2 minutes because he doesn't reset the array and also didn't put < n which made him iterate over the entire array in each test and there were no tests covering this in the systest except mine. Sorry CreeperK btw :)
" So yeah writing unreadable codes is a skill you gotta learn :D " No, I don't wanna learn obfuscation. Also, it is not a good practice to write an unreadable code. Finally, we are all here to learn and getting hacked though makes u lose points, but you can learn from if you had that specific thing that systests, other hacks won't cover like the user you hacked