Архив рубрики: Windows

Русский хакер продал 272 млн аккаунтов Email за 1$

Массивная база данных состоящая из 272 миллиона эмейлов и паролей к популярным сервисам, включая Gmail, microsoft и Yahoo, была выставлена на продаже на одном из торговых сервисов в ДаркВебе.
Русский хакер, который был известен под ником «the Collector», был замечен фирмами по обеспечению кибербезопасности ранее, когда анонсировал  к продаже 1.7 миллиардов аккаунтов Email на форуме Темного интернета.
Украденные аккаунты принадлежат к крупнейшим мировый провайдерам Gmail, Yahoo, Microsoft и Mail.ru.
Когда аналитики защиты безопасности попросили проверить подлинность аккаунтов в дампе, хакер запросил 50 рублей (1$) за продажу полного дампа.

Генеральный директор безопасности Алекс Холден говорит, что большое количество этих аккаунтов (1,17 млрд) оказались дубликатом и что только 272 миллионов записей были уникальными.
Согласно отчету, в основном взломанные учетные данные, 57 млн, принадлежат к ведущим российским поставщикам услуг электронной почты Mail.ru, here.also, Yahoo пострадали 40 миллионов, 33 миллионов учетных записей Hotmail и Microsoft и 24 миллиона учетных записей Gmail.
Из них 272 миллионов записей анализировала Hold Security, около 42,5 миллиона учетных данных, которые торговались на Dark Web в компании не видели.

На самом деле, после проверки по мессенджеру Mail.ru не найдено ни одной активной комбинаций имен пользователей и паролей, которые соответствуют их существующим учетным записям электронной почты, сообщил представитель Mail.ru журналу Reuters.

Только на прошлой неделе, pwnedlist, веб-сайт с самым большой базой данных украденных учетных данных, который позволяет пользователям проверить были ли скомпрометированы данные электронной почты в своей учетной записи.
Более 866 миллионов учетных данных были выложен в интернет из-за уязвимости на веб-сайте pwnedlist.

Автор: Nikola Vrazumec

Как быстро установить патч на SharePoint

Как быстро установить патч на SharePoint или почему обновление может устанавливаться 5 часов.  
Подробности тут.
Если вкратце необходимо отключить службы  SPTimerV4, IISAdmin, OSearch15, SPSearchHostController перед установкой патча и включить после установки.
1. Отключаем службы  IISAdmin и SPTimerV4
2. Выключаем службы IIS Admin и Timer Services если они запущены                                                                                                           
3. Если необходимо делаем паузу в службе поиска , см детали в cкрипте
4. Останавливаем  службы поиска Search Services, см детали в скрипте
5. Устанавливаем патч в пассивном режиме
Примечание:  Power Shell должен оставаться открытым в фоне пока выполняется патч
6. После выполнения патча, Power Shell скрипт, восстанавливает запуск служб в  на шаге 1 в автоматический
7. Запускаем службы IIS Admin и Timer
8. Запускаем службы поиска Search Services                                                                                                                                                                                      
9. Возобновляем службы поиска если остановили Search Service Application
10. В конце скрипт отображает время начала и завершения патча  и затраченное время
После установки патча  запускаем вручную Sharepoint configuration wizard или

1.) заходим в папку «C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions15BIN»
2.) И запускаем конфигурирование PSConfig.exe -cmd upgrade -inplace b2b -force -cmd applicationcontent -install -cmd installfeatures

###########################
##Ensure Patch is Present##
###########################
$patchfile = Get-ChildItem | where{$_.Extension -eq «.exe»}
if($patchfile -eq $null)
{
  Write-Host «Unable to retrieve the file.  Exiting Script» -ForegroundColor Red
  Return
}
########################
##Stop Search Services##
########################
##Checking Search services##
$srchctr = 1
$srch4srvctr = 1
$srch5srvctr = 1
$srv4 = get-service «OSearch15»
$srv5 = get-service «SPSearchHostController»
If(($srv4.status -eq «Running») -or ($srv5.status-eq «Running»))
  {
    Write-Host «Choose 1 to Pause Search Service Application» -ForegroundColor Cyan
    Write-Host «Choose 2 to leave Search Service Application running» -ForegroundColor Cyan
    $searchappresult = Read-Host «Press 1 or 2 and hit enter» 
    Write-Host
   
   if($searchappresult -eq 1)
    {
        $srchctr = 2
        Write-Host «Pausing the Search Service Application» -foregroundcolor yellow
        Write-Host «This could take a few minutes» -ForegroundColor Yellow
        $ssa = get-spenterprisesearchserviceapplication
        $ssa.pause()
    }
   
    elseif($searchappresult -eq 2)
    {
        Write-Host «Continuing without pausing the Search Service Application»
    }
    else
    {
        Write-Host «Run the script again and choose option 1 or 2» -ForegroundColor Red
        Write-Host «Exiting Script» -ForegroundColor Red
        Return
    }
  }
Write-Host «Stopping Search Services if they are running» -foregroundcolor yellow
if($srv4.status -eq «Running»)
  {
    $srch4srvctr = 2
    set-service -Name «OSearch15» -startuptype Disabled
    $srv4.stop()
  }
if($srv5.status -eq «Running»)
  {
    $srch5srvctr = 2
    Set-service «SPSearchHostController» -startuptype Disabled
    $srv5.stop()
  }
do
  {
    $srv6 = get-service «SPSearchHostController»
    if($srv6.status -eq «Stopped»)
    {
        $yes = 1
    }
    Start-Sleep -seconds 10
  }
  until ($yes -eq 1)
Write-Host «Search Services are stopped» -foregroundcolor Green
Write-Host
#######################
##Stop Other Services##
#######################
Set-Service -Name «IISADMIN» -startuptype Disabled
Set-Service -Name «SPTimerV4» -startuptype Disabled
Write-Host «Gracefully stopping IIS W3WP Processes» -foregroundcolor yellow
Write-Host
iisreset -stop -noforce
Write-Host «Stopping Services» -foregroundcolor yellow
Write-Host
$srv2 = get-service «SPTimerV4»
  if($srv2.status -eq «Running»)
  {$srv2.stop()}
Write-Host «Services are Stopped» -ForegroundColor Green
Write-Host
Write-Host
##################
##Start patching##
##################
Write-Host «Patching now keep this PowerShell window open» -ForegroundColor Magenta
Write-Host
$starttime = Get-Date
$filename = $patchfile.basename   
Start-Process $filename
Start-Sleep -seconds 20
$proc = get-process $filename
$proc.WaitForExit()
$finishtime = get-date
Write-Host
Write-Host «Patch installation complete» -foregroundcolor green
Write-Host
##################
##Start Services##
##################
Write-Host «Starting Services Backup» -foregroundcolor yellow
Set-Service -Name «SPTimerV4» -startuptype Automatic
Set-Service -Name «IISADMIN» -startuptype Automatic
##Grabbing local server and starting services##
$servername = hostname
$server = get-spserver $servername
$srv2 = get-service «SPTimerV4»
$srv2.start()
$srv3 = get-service «IISADMIN»
$srv3.start()
$srv4 = get-service «OSearch15»
$srv5 = get-service «SPSearchHostController»
###Ensuring Search Services were stopped by script before Starting»
if($srch4srvctr -eq 2)
{
    set-service -Name «OSearch15» -startuptype Automatic
    $srv4.start()
}
if($srch5srvctr -eq 2)
{
    Set-service «SPSearchHostController» -startuptype Automatic
    $srv5.start()
}
###Resuming Search Service Application if paused###
if($srchctr -eq 2)
{
    Write-Host «Resuming the Search Service Application» -foregroundcolor yellow
    $ssa = get-spenterprisesearchserviceapplication
    $ssa.resume()
}
Write-Host «Services are Started» -foregroundcolor green
Write-Host
Write-Host
Write-Host «Script Duration» -foregroundcolor yellow
Write-Host «Started: « $starttime -foregroundcolor yellow
Write-Host «Finished: « $finishtime -foregroundcolor yellow
Write-Host «Script Complete»
+ Небольшое видео по Powershell

Полезные ссылки, тут

Список всех CU

Автор: Roman D
Дата публикации: 2016-05-06T02:10:00.001-07:00

Как узнать версию Sharepoint

Как узнать версии  продуктов SharePoint достаточно запустить скрипт  get_sp_ver.ps1
Param(
  # decide on whether all the sub-components belonging to the product should be shown as well
  [switch]$ShowComponents
)
# location in registry to get info about installed software
$RegLoc = Get-ChildItem HKLM:SoftwareMicrosoftWindowsCurrentVersionUninstall
# Get SharePoint Products and language packs
write-host «Products and Language Packs»
write-host «——————————————-«
$Programs = $RegLoc |
       where-object { $_.PsPath -like «*Office*» } |
       foreach {Get-ItemProperty $_.PsPath}
$Components = $RegLoc |
       where-object { $_.PsPath -like «*1000-0000000FF1CE}» } |
       foreach {Get-ItemProperty $_.PsPath}
# output either just the info about Products and Language Packs
# or also for sub components
if ($ShowComponents.IsPresent)
{
       $Programs | foreach {
             $_ | fl  DisplayName, DisplayVersion;
             $productCodes = $_.ProductCodes;
             $Comp = @() + ($Components |
                    where-object { $_.PSChildName -in $productCodes } |
                    foreach {Get-ItemProperty $_.PsPath});
             $Comp | Sort-Object DisplayName | ft DisplayName, DisplayVersion -Autosize
       }
}
else
{
       $Programs | fl DisplayName, DisplayVersion
}

Результат

Автор: Roman D
Дата публикации: 2016-05-06T01:43:00.001-07:00

Как получить больше 1000 записей из AD

При использовании связанного сервера к AD,   может возникнуть проблема получения всех записей из AD.
Поскольку  есть ограничения по количеству строк для запроса к LDAP .
Windows Server 2008 and newer domain controller returns only 5000 values in a LDAP response
Самый простой вариант разбить запрос на несколько частей по любому признаку, самое логичное по sAMAccountname 
Таким образом один запрос превращается в два, три и тд.
SELECT NAME,
       givenName,
       SN,
       sAMAccountname,
       mail,
       company,
       division,
       department,
       manager,
       userAccountControl,
       ObjectGuid,
       CASE
            WHEN ad.accountexpires IN ('9223372036854775807', '0', '129895740000000000') THEN
                 '9999-12-31'
            ELSE DATEADD(
                     mi,
                     (CAST(ad.accountExpires AS BIGINT) / 600000000)
                     + DATEDIFF(Minute, GETUTCDATE(), GETDATE()),
                     CAST(
'1/1/1601' AS DATETIME2)
                 )
       END AS AccountExpiresDate     
FROM   OPENQUERY(
           AD_SERVER,
           'select Name, givenName, SN, sAMAccountname, mail, company,division,department,manager, userAccountControl,ObjectGuid,accountExpires   from ''LDAP://DC=domen,DC=ru'' WHERE  sAMAccountname  < ''L'' and objectClass=''user'''
       ) AS AD
      
SELECT NAME,
       givenName,
       SN,
       sAMAccountname,
       mail,
       company,
       division,
       department,
       manager,
       userAccountControl,
       ObjectGuid,
       CASE
            WHEN ad.accountexpires IN ('9223372036854775807', '0', '129895740000000000') THEN
                 '9999-12-31'
            ELSE DATEADD(
                     mi,
                     (CAST(ad.accountExpires AS BIGINT) / 600000000)
                     + DATEDIFF(Minute, GETUTCDATE(), GETDATE()),
                     CAST('1/1/1601' AS DATETIME2)
                 )
       END AS AccountExpiresDate     
FROM   OPENQUERY(
           AD_SERVER,
           'select Name, givenName, SN, sAMAccountname, mail, company,division,department,manager, userAccountControl,ObjectGuid,accountExpires   from ''LDAP://DC=domen,DC=ru'' WHERE  sAMAccountname  > ''L'' and objectClass=''user'''
       ) AS AD
Расшифровка поля userAccountControl
'AcctCtrl' = ( CASE WHEN userAccountControl = 2 THEN 'Account is Disabled'
                        WHEN userAccountControl = 16 THEN 'Account Locked Out'
                        WHEN userAccountControl = 17
                        THEN CONVERT (VARCHAR(48), 'Entered Bad Password')
                        WHEN userAccountControl = 32
                        THEN CONVERT (VARCHAR(48), 'No Password is Required')
                        WHEN userAccountControl = 64
                        THEN CONVERT (VARCHAR(48), 'Password CANNOT Change')
                        WHEN userAccountControl = 512 THEN 'Normal'
                        WHEN userAccountControl = 514 THEN 'Disabled Account'
                        WHEN userAccountControl = 8192
                        THEN &#39
;Server Trusted Account for Delegation'
                        WHEN userAccountControl = 524288
                        THEN 'Trusted Account for Delegation'
                        WHEN userAccountControl = 590336
                        THEN 'Enabled, User Cannot Change Password, Password Never Expires'
                        WHEN userAccountControl = 65536
                        THEN CONVERT (VARCHAR(48), 'Account will Never Expire')
                        WHEN userAccountControl = 66048
                        THEN 'Enabled and Does NOT expire Paswword'
                        WHEN userAccountControl = 66050
                        THEN 'Normal Account, Password will not expire and Currently Disabled'
                        WHEN userAccountControl = 66064
                        THEN 'Account Enabled, Password does not expire, currently Locked out'
                        WHEN userAccountControl = 8388608
                        THEN CONVERT (VARCHAR(48), 'Password has Expired')
                        ELSE CONVERT (VARCHAR(248), userAccountControl)
                   END )

 Еще одна статья в помощь

Автор: Roman D
Дата публикации: 2016-04-22T05:25:00.001-07:00

Opera Browser free VPN

Opera Browser теперь предлагает бесплатную и неограниченную услугу по VPN

Opera становится первым веб-браузером со встроенным, свободный, неограниченным и 256-разрядным шифрованием VPN сервисом для всех.
Бесплатный VPN Opera защищает незашифрованный сеанс браузера от утечки на открытых беспроводных сетях и также рассмотрит разблокирование брандмауэров для повышения конфиденциальности и безопасности.


Виртуальные частные сети (VPN), стали важным инструментом не только для крупных компаний, но и для людей, готовых улучшить веб конфиденциальность, обойти ограничения на содержание и защитить себя от растущей угрозы кибератак.
Opera выпустила обновленную версию приложения своего веб-браузера с бесплатной встроенной службы VPN, чтобы держать вас в безопасности в Интернете одним щелчком.

Для тех, кто незнаком, виртуальные частные сети легкие инструменты безопасности и конфиденциальности, маршрутизируют интернет-трафик через отдаленную связь, Защита для вашего браузера, скрытие данных о местоположении и  для доступа на ограниченные ресурсы.

В отличие от нескольких других бесплатных услуг VPN, встроенный VPN сервис в Opera предложит вам неограниченное использование данных, Вы просто должны включить виртуальный коммутатор в меню Настройки, чтобы включить функцию.
Таким образом, вам не требуется устанавливать сторонние расширения, не требуется платить ежемесячную абонентскую плату, а также не установлено никаких ограничений на использование данных.

Сервис Opera VPN использует 256-битное шифрование, чтобы скрыть все данные соединения и заменяет ваш IP-адрес с виртуальным, благодаря этому достаточно трудно отследить ваше местоположение, идентифицировать ваш компьютер или блок-контент,  для правительства или кого-либо,

Бесплатная  VPN в Opera стало возможным после того, как компания приобрела поставщика VPN SurfEasy в прошлом году.

Чтобы бесплатно попробовать Opera VPN, установите последнюю версию Opera для Windows, обратите внимание на «Конфиденциальность и Безопасность» вкладки и переключите эту функцию.
Поскольку служба VPN доступна в последней версии, служба позволяет переключаться между тремя виртуальными местами: Соединенные Штаты, Канада и Германия.

Могучий Шелл. Шпаргалка по PowerShell. Часть 1.

PowerShell на мой взгляд это идеальный инструмент для автоматизации абсолютно любых задач.
Его можно изучать бесконечно и находить в нем все новые и новые возможности.
Почти все продукты MS начиная с 2007 года поддерживают управление настройку и администрирование через PowerShell, что дает практически нереальные возможности в их администрировании и управлении.
Это пост создан с целью иметь под рукой самые полезные скрипты и команды.
Для тех кто совсем не знаком  с этим чудесным инструментом рекомендую видео .
С чего же начинается PowerShell ?
Чтобы начать пользоваться скриптами локально необходимо установить политику выполнения сценариев в  RemoteSigned
Для этого достаточно выполнить команду Set-ExecutionPolicy RemoteSigned
После этого можно спокойно пользоваться скриптами созданными локально
Пару слов о том как устроен PowerShell 
1.Каждая команда состоит из 2х частей
ГЛАГОЛ (Get , Set, Add, Remove, Invoke , Start , Stop и тд  полный список Get-Verb)+ СУЩЕСТВИТЕЛЬНОЕ (Command , Service, Process , PSDrive  , ExecutionPolicy  ) =   Get-Command
Более полную информацию о любом командлете (встроенная команда PowerShell ) можно получить
Get-Help -name Get-Command
Или
Get-Alias -?   
Полный список команд можно получить  командой
Get-Command -type cmdlet

2.Псевдонимы команд (алиасы)
Дают возможность пользоваться сокращенными привычными названиями команд  ls, dirkill , del  , copy, cls
Полный список алиасов
Get-Alias
2.Переменные
Переменные начинаются со знака $ ,  переменные создаются в момент присваивания им значения, тип определяется автоматически
Полезное видео.
$text = «Sample Text»
$text.GetType()
Типизированные переменные , можно указать конкретн