This badword.txt is duplicated in a zip file called pattern. This archive contains 7 files: - badword.txt - brackets.txt - end.txt - follow.txt - key.txt - start.txtpic.twitter.com/pqJgdGJyuj
You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more
This badword.txt is duplicated in a zip file called pattern. This archive contains 7 files: - badword.txt - brackets.txt - end.txt - follow.txt - key.txt - start.txtpic.twitter.com/pqJgdGJyuj
All these files are used in a obfuscated package which seems to be an #Android library from teddymobile
TeddyMobile is a Chinese company, they worked with a lot of manufacturers including @oppo.
http://teddymobile.cn pic.twitter.com/A4SOJeqBw2
As far as I understand, teddymobile is making number identification in SMS The picture below can be translated like this: - Total number of SMS 20M+ - SMS identification accuracy 100% - Identification number recognition rate of 70% - recognition accuracy of 95%pic.twitter.com/KdQV4Zj1Xc
According to the code @OnePlus is sending your IMEI and the phone manufacturer to a Chinese server owned by teddymobile
pic.twitter.com/Au0u1sdpNi
In the TeddyMobile's package com.ted, they have a class called SysInfoUtil. This class contains the following methods: - getAndroidID - getCPUSerial - getDeviceId - getHardwareSerialNumber - getIMEI - getIPAddress - getMacAddress - getPhoneNumbe - getScreenPixelspic.twitter.com/9A8UhsOXae
Except getIPAddress and getScreenPixels, all the other methods are used.
They also send JSON messages to their servers with a "telephone" and "messageText" fields...
pic.twitter.com/vuteISH0Tj
This is a good reminder...Please don't copy paste your bank account number...TeddyMobile has a dedicated method to recognize a bank account...
pic.twitter.com/U21J2jrXcN
I uploaded the @OnePlus #clipboard APK on @koodous_project
https://koodous.com/apks/2f8a01035e0409d1a44c5d658bac0ba4e900df6f017556ce07b33a6c5c9ffa99 …
I didn't manage to trigger the network communications to the teddymobile servers but I will continue later. Moreover, I have other ideas in mind regarding this app 
After deeper investigation only a small part of the tedmobile sdk is used. In the ClipboardManager, in the verifyExpress method they used the method parserOnline. https://twitter.com/fs0c131y/status/956945666898628608 …pic.twitter.com/RckQB4JVf3
This parserOnline will send what you have in your clipboard to a teddymobile server in order to parse it. It important to say that this method is used only for Chinese users.pic.twitter.com/qrPuKSqdc6
So we can definitively say that clipboard data of @OnePlus Chinese users is send to teddymobile servers without their consent.
The conditions to send your data to teddymobile server are:
- clip data is not numeric
- not an email
- Chinese @OnePlus phone
- clipboard data matched the express pattern.
It good to say that parserOnline method is used 3 times in the code, so this is only 1 of the 3 usecasespic.twitter.com/Rp9HvZTF48
I got a statement from @oneplus about this.
"There’s been a false claim that the Clipboard app has been sending user data to a server. The code is entirely inactive in the open beta for OxygenOS , our global operating system. No user data is being sent to any server without consent in OxygenOS."
"In the open beta for HydrogenOS, our operating system for the China market, the identified folder exists in order to filter out what data to not upload. Local data in this folder is skipped over and not sent to any server."
Interesting. Did they answer why they integrated the teddymobile SDK in the clipboard app even if it is inactive?
I'm asking them, but my guess is it's leftoever (and unused/inactive) code from the HydrogenOS version. Just because functions are there doesn't mean they're being used/called.
Sure, but it's mean they put effort to integrate this SDK, merge it in production and use it in the past.
They are using it. In HydrogenOS. But for the exact opposite reason you said - the bad words list is a blacklist of stuff not to send to the cloud. What is done in China is specific to the Chinese market, like it was shown with the previous clipboard "sending data" nonstory.
I did not said how they used this list :D. But it's good to have the official explanation. Sure it's specific to the Chinese market but we can talk about it no?
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.