tgalal / yowsup

The WhatsApp lib
GNU General Public License v3.0
7.08k stars 2.23k forks source link

new update/ today ... block number if send 30-70 msg #63

Closed mofakfree closed 5 years ago

mofakfree commented 11 years ago

The block numbers after sending about 20- 70 different number !!!!! What are your experiences and your knowledge?About this update

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

CODeRUS commented 11 years ago

thanks, forgot about this.

ruriimasu commented 11 years ago

we can all chip in our own numbers and family members' numbers for the tests? at least this way, we can all be prepared to receive 'spam' tests.

alejandro-amo commented 11 years ago

anther param to play with is the ack request

shirioko commented 11 years ago

Fine, here are my two numbers I use for testing 316 2944 5136 and 352 661 184 849 I would prefer if you would spam the last one, first one is for personal use :')

@adasmalakar so far I'm succesful in sending messages and receiving messages to and from my other number. Haven't tested any different numbers yet as I don't have a large testgroup and only ~150 contacts who I don't intend to spam :P I'm hoping to finish my contact manager today (added Google contacts API downloader yesterday) so I can test conversations with other numbers

ruriimasu commented 11 years ago

mine is +14259063851

alejandro-amo commented 11 years ago

forget about ack thing. broadcasts DO request ack like normal messages. mine are 16463977765 16464508895 you can bombard them

CODeRUS commented 11 years ago

@alist3r what's your info source? i'm talking about broadcast function.

shirioko commented 11 years ago

You should start a new issue where people can just post their numbers, would be a lot more organized.

alejandro-amo commented 11 years ago

@CODeRUS I just did a test broadcast with official client to some numbers which I can annoy a bit. when I sent it, the list of contacts shows single/double check mark. assumption: If I can control the "sent to the server" / "delivered" status of a broadcast for each recipient, that means that ack is clearly requested.

timespace7 commented 11 years ago

I found that country code will affect whether sending messages through yowsup will be blocked. When I send messages by time gap 0.5s to different numbers starting with 1(US number), my number is not blocked. When I send messages to the different numbers of my country, my number will be blocked soon.

Also, adding contact_typing and contact_paused before send_message do not stop blocking..

I think someone should try the official whatsapp client to send messages to see whether will be blocked

shirioko commented 11 years ago

Also, did you use numbers or JIDs as targets? I found that I could only send messages in WhatsApiNet when using the JID (number + "@s.whatsapp.net") https://github.com/perezdidac/WhatsAPINet/issues/25

timespace7 commented 11 years ago

I used JID as targets. For example, US targets -> 1XXXXXXXXXX@s.whatsapp.net

timespace7 commented 11 years ago

Is anyone still working on this issue to find out the blocking mechanism of whatsapp? There are some guesses about the blocking mechanism(I heard from here and whatsapi project):

  1. Time filter - limit the number of wa users that an account can send messages to in a certain period (but will this time filter exist in official clients? If so, we can do nothing)
  2. After sending some messages, server will send a signal to tell clients to change login password. Using old password => blocked (Can someone sniff the network packets of official clients again?)
  3. Server checks whether the clients have a valid contacts. If not, then blocking. (Same as 2, can someone sniff the network packets of official clients again?)

I have some numbers can be used to test it. If someone has skills to test it and wants some numbers, I can give you some.

alaamac commented 11 years ago

whatsapp block virual number not real number

Akuka commented 11 years ago

@alaamac you are wrong.... they also block real numbers

kingk110 commented 11 years ago

@Timespace7 I tried to send 20 message each time and then change the password and send again. It worked fine and send about 1000 message in approximately 10 minutes. but after about 3 hours the number got blocked without sending any message. So, in my opinion, I think that the 2nd mechanism is incorrect.

beldar commented 11 years ago

Maybe they're using the protocol "strict" meaning if something doesn't behave as expected they just block the account, I would suggest to use the code in "listen" mode and using the real app (in a phone) write stuff and see what nodes how and when are received and try to mimic as real as possible (timing included).

Maybe someone can try that, I have all my numbers blocked :/

Akuka commented 11 years ago

@beldar I have not found a way to listen to original whatsapp client... if you know how to do it, please explain to me and i will try it... i have some numbers....

beldar commented 11 years ago

@akuka I meant using yowsup or WhatsAPI only to listen (printing incomming nodes) and use your phone to send messages to the 'server'. This way you can see which nodes are sent and how.

Letux commented 11 years ago

I tried to send 20 message each time and then change the password and send again.

@kingk110 How do you change password?

alejandro-amo commented 11 years ago

I just obtain data (image, status), never send messages. And I get blocked anyway. Whatsapp record time for me: 17 minutes. Interesting. If someone needs fake numbers to test, I recommend callcentric.com in order to get as many phone numbers as you wish. Google voice is also a very good option. You can combine both in order to get several phone numbers / accounts

alejandro-amo commented 11 years ago

hipothesis: they are iteratively parsing the ID that we use to register accounts. we cannot use correct ID's right now because we have lost track on the ID generation algorithm, so accounts made with non official clients can be easily detected (correct me if I am wrong)

kingk110 commented 11 years ago

maybe it is a correct hypothesis and maybe it it related to the user agent that we are using because all of us are using the same build hash and user agent I would like to ask how can I get the build hash and the other key that is used in registeration??

timespace7 commented 11 years ago

@beldar if you want some numbers, I can provide you a way to get unlimited numbers. I don't want to share this here so that whatsapp.inc or anyone makes the way disable. Do you need it?

alejandro-amo commented 11 years ago

the same here. i can provide unlimited numbers

beldar commented 11 years ago

@Timespace7 @alist3r Well yes I'd be interested. You can contact me beldar.cat at gmail Anyone made some progress BTW?

alejandro-amo commented 11 years ago

no reversengineering progress so far Added to tasks, provide new whatsapp number and pass to beldar

alejandro-amo commented 11 years ago

@beldar you got new credentials in your mailbox. Enjoy! cheers

Akuka commented 11 years ago

@Timespace7 @alist3r @beldar can u give it to me also? this could save me a lot of money I spend on my blocked numbers when I'm doing experiments and trying to crack the encryption of whatsapp.. you can contact me glidaprod at gmail

shirioko commented 11 years ago

I think that it would be very helpful if we made a list of all our registered whatsapp numbers, that way we can make sure that we send messages to existing contacts and rule out the possibility of being blocked from sending to non-existing contacts.

Mine: 31629445136@s.whatsapp.net (Dutch) 352661184849@s.whatsapp.net (Luxembourg)

alaamac commented 11 years ago

any update ?

kingk110 commented 11 years ago

@shirioko this hypothesis is no longer working because I had collected little database that contain valid numbers from different countries and tried a lot until I got block for 13 paid numbers !!! :( can you try to sync some contacts using the sync of yowsup and then send to these synced contacts, or if you can guide me how to use the sync with a clear example because I was tired from solving this issue

CODeRUS commented 11 years ago

Today i got a report from my friend about spam in Whatsapp, so: PLEASE GO FUCK AWAY FROM WHATSAPP! STOP SPAMMING IN THIS NICE MANAGER FUCKING IDIOTS!

shirioko commented 11 years ago

So, it has come to this...

alejandro-amo commented 11 years ago

I agree with that...

jonnywilliamson commented 11 years ago

Can't agree more with @CODeRUS.

shirioko commented 11 years ago

We've created a monster.. WE WILL BURN FOR OUR SINS!

:')

beldar commented 11 years ago

How are they sending spam if the code doesn't work... ? And if the code doesn't work how is that our fault?

shirioko commented 11 years ago

The code works but it currently limits the number of messages that you can send so they just compensate for that by sending messages from multiple accounts.

walter-white commented 11 years ago

@alist3r I have read that you have implemented the yowsup contacts checking in php, can you please share it? I'm testing possible stuff to avoid being checked and maybe checking if a user has a register whatsapp account can help me. Thanks

alejandro-amo commented 11 years ago

@walter-white I think that @shirioko is the most adecuated person to talk about PHP implementations of whatsapp protocol! I just programmed a PHP web interface that internally uses yowsup, so python is the real biggie :D And actually, not a lot of work, done, just some implementations of all known methods, and php calling pyhton scrpts to gather data. I think that you are wrong, since whatsapp servers and protocolo are indeed designed to response request for whatever number you ask for, regardless of wether it has whatsapp or not. that should not cause any spam thresold to trigger, since the oficial whatsapp client does it continuosly, too.

walter-white commented 11 years ago

@alist3r Correct me if I'm wrong, but don't you think that if I'm sending messages to a user that doesn't have whatsapp installed can not be a reason to block a number?? Because, when you have whatsapp installed in your mobile you can only send messages to your "Whatsapp contacts", and no to somebody without whatsapp. I would like to check if this number has whatsapp installed and depending of the response send or not the message. What's the response you get on success and on failure?, I'm not able to run the script. Thanks and sorry for my english

alejandro-amo commented 11 years ago

oh, wait! you are trying to send messages to numbers that you don't check before? If so, maybe yes! C'mon dude, that's so easy to solve! You just have to parse the JSON response from executing

yowsup-cli --sync +xxxxxxxxxxx

If the "w" node is "0", dont try to send a message.

Anyway, massive checking of numbers is also proved to trigger lock thresold, so you have to be responsible not abusing it.

walter-white commented 11 years ago

@alist3r Well, that's exactly what I'm doing. I'm running yowsup script

yowsup-cli -c config.example -d --sync +xxxxxxxxxxx

I have filled the config file with the mobile number and password but this is the error produced

Traceback (most recent call last):
  File "./yowsup-cli", line 302, in <module>
    wsync = WAContactsSyncRequest(login, password, contacts)
  File "/Yowsup/Contacts/contacts.py", line 37, in __init__
    self.authReq = WAContactsSyncAuth(username, password)
  File "/Yowsup/Contacts/contacts.py", line 86, in __init__
    + self.encode(self.md5("AUTHENTICATE:"+WAContactsSyncAuth.digestUri))))
  File "/Yowsup/Contacts/contacts.py", line 107, in md5
    return md5(data).digest();
TypeError: md5() argument 1 must be string or read-only buffer, not bytearray

I have no clue of python so it's difficult to me to debug this code, at least can somebody show me what is the aspect of the url requested. Thanks

shirioko commented 11 years ago

@alist3r oh you, stop flattering me! :)

@walter-white I've added yowsup's contact sync v2 to WhatsAPI https://github.com/venomous0x/WhatsAPI/pull/315

pliao commented 11 years ago

@alist3r I have three real number, but had been blocked. you made some progress?

Bashar commented 11 years ago

same goes here, i messaged my own 3 numbers for testing purposes using https://github.com/davidgfnet/whatsapp-purple under pidgin and the test account got blocked (password re-generation done using yowsup though)

possibly they don't like sending from other places except mobile devices?

Bashar commented 11 years ago

from http://www.whatsapp.com/faq/general/23154266 : Using an automated system or an unauthorized / unofficial client application to send messages through WhatsApp.

so unofficial client application might result of suspending your account eventually seems to be

abbas224252 commented 11 years ago

MR Bashar use Egypt number its send 1000 message .

CODeRUS commented 11 years ago

what is your number?