Сокращение размера файла паролей

Discussion in 'Песочница' started by Loents, 7 Jan 2023.

  1. Loents

    Loents New Member

    Joined:
    24 Jul 2022
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Прошу прошения за примитивность вопроса, но я честно искал ответ в инете и не нашёл, поэтому прошу помочь, новичку.
    Вопрос такой есть файл скажем популярный rockyou, как мне его уменьшить в размере, создав на его основе новый файл скажем с длиной символов от 8 до 13, а все остальные слова с другой длиной удалить из начального файла? Мне кажется что решение должно быть очень простым, но я уже голову сломал. Ну и если еще расширите ответ и подскажете можно ли как то по маске из уже имеющегося файла создавать новый через фильтр маски, то же буду благодарен.
     
  2. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,105
    Likes Received:
    8,474
    Reputations:
    25
    cat rockyou.txt | grep -E '^.{4,5}$' > new_file.txt
     
    Loents likes this.
  3. Loents

    Loents New Member

    Joined:
    24 Jul 2022
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Спасибо огромное это конечно же работает. Но вот что делать если так случилось и у тебя нет Linux под рукой, а есть только Винда.
     
  4. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,105
    Likes Received:
    8,474
    Reputations:
    25
    Ну во-первых можно поставить cygwin. Полезная штуковина для этого ибо сие есть далеко не единственная задача, которую под Ляликсом легче решать.
    Во-вторых само-собой можно сие и закодить. Открыть файл, читать построчно, применять регулярки. Но тут ушь от языка зависит.
    В-третьих можно наверное и батник заюзать. Но это извращение для Избранных :) Хотя кто-то юзает этот их PowerShell и отрицает его богомерзкость, так что х/з :)

    А вот чисто готовых штук для этого я даже и не знаю. Можно попробовать поискать на гитхабе, только х/з как сие сформулировать вообще :)

    UPD: а ну да, а можно просто поднять ляликс на виртуалке, он не особо жреть но всегда пригодится. Как вариант скачать образ Kali.
    Или заюзать какой-нибудь паблик сервис, если они еще остались в природе. Как вариант халявный хостинг с доступом по ssh
    если такой найти. Обычно не дают ssh так что тут х/з. Ну или арендовать тачку чтобы юзать ее как VPN в том числе, ну и заодно готовый Ляликс сервер.

    Плюс под Вендой можно попробовать какие-то notepad++ или х/з что. Но это извращение и пляска с бубнами надолго. Так что прям х/з.
     
    Turanchocks_ and Loents like this.
  5. Turanchocks_

    Turanchocks_ Elder - Старейшина

    Joined:
    11 May 2013
    Messages:
    1,327
    Likes Received:
    3,285
    Reputations:
    17
    Феня право дело глаголит. Из простого - поднять линь на виртуалке, создать общую папку и гонять туда сюда нужное. Вообще, такая вафля быть должна в обязательном порядке, архиудобно.
     
  6. ok--

    ok-- Member

    Joined:
    29 Dec 2022
    Messages:
    8
    Likes Received:
    33
    Reputations:
    0
    Turanchocks_ likes this.
  7. lifescore

    lifescore Elder - Старейшина

    Joined:
    27 Aug 2011
    Messages:
    651
    Likes Received:
    511
    Reputations:
    72
    Какие виртуалки к черту, вы в каком веке застряли?

    Автор - если винда, топай на майкрософт за wsl и на борту у тебя полноценная линь в винде.

    Если не нравиться, бери powershell, опять на сайт выше, твоя задача решиться в 3 строчки. powershell уже давно вырос, и куда на порядок продвинутее баша и тд.
    Но баш - свят, живее всех живых и никуда не денется


    Из софты с кликабельными окошками unified list manager поищи ULM, от товарища blazer (эхх вспомнился hashrunner - ностальгия...)
     
    Turanchocks_ likes this.
  8. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,105
    Likes Received:
    8,474
    Reputations:
    25
    Задача поставлена ведь. Продемонстрируйте же мощь powershell чтобы ею полюбоваться.
     
    lifescore likes this.
  9. Turanchocks_

    Turanchocks_ Elder - Старейшина

    Joined:
    11 May 2013
    Messages:
    1,327
    Likes Received:
    3,285
    Reputations:
    17
    WSL - охереть. Реально я древний. Спасибо за науку.
     
    lifescore likes this.
  10. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,105
    Likes Received:
    8,474
    Reputations:
    25
    Демонопоклонничество какое-то началось... :)
     
  11. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
  12. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,105
    Likes Received:
    8,474
    Reputations:
    25
    Нужен полный пример. Просто чтобы сравнить кодес на powershell и на пайтоне например.
    На кой пес нужно морщить мозг с powershell если есть пайтон. Ну и на кой нужен пайтон если есть баш :)

    Ох Венду как ставить неохото... :)

    ==================================

    Короче на пайтоне будет что-то вроде этого (не тестил ) :
    Code:
    import re
    
    regex = re.compile('^.{3}$')
    with open("output.txt", "w") as outp:
        with open("rockyou.txt", "r") as f:
            for line in f:
                if regex.match(line):
                    outp.write(line)
    
    Если на powershell получается нечто сравнимое - то он не нужен. Ибо зачем ? Смысл-то в том чтобы максимально просто добиться желаемого.
    А написать программку уже можно и на нормальном языке, так она же будет уже с блекджеком и шлюхами и не только файл разберет но и пароль подобрать в состоянии.
     
    #12 DartPhoenix, 12 Jan 2023
    Last edited: 12 Jan 2023
  13. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
    PS C:\Users\Downloads> cat .\rockyou.txt | Select-String -Pattern "^....$"
    PS C:\Users\Downloads> Get-Content .\rockyou.txt | Select-String -Pattern "^....$"

    хз зачем писать на питоне скрипт когда оно уже есть в системе
     
    lifescore likes this.
  14. lifescore

    lifescore Elder - Старейшина

    Joined:
    27 Aug 2011
    Messages:
    651
    Likes Received:
    511
    Reputations:
    72
    Одобряю

    Code:
    Measure-Command -Expression { Get-Content .\rockyou.txt -ReadCount 1000 | %{$_ -match '(?=.*\d)(?=.*[!@#$%^&*])(?=.*[a-z])(?=.*[A-Z]).{8,}$'} }
    
    Days              : 0
    Hours             : 0
    Minutes           : 0
    Seconds           : 10
    Milliseconds      : 61
    Ticks             : 100615682
    TotalDays         : 0,000116453335648148
    TotalHours        : 0,00279488005555556
    TotalMinutes      : 0,167692803333333
    TotalSeconds      : 10,0615682
    TotalMilliseconds : 10061,5682
    Параметр -ReadCount должен влиять на скорость при работе с большими файлами, но у меня вышло только дольше.

    Для более гибких выборок можно заюзать Linq (есть полноценный форк для PS https://blog.ironmansoftware.com/daily-powershell/powershell-linq/

    Большой гайд по linq https://www.red-gate.com/simple-talk/development/dotnet-development/visual-lexicon-linq-wallchart/

    Из фич нравиться возможность конвертировать C# сорсы в pwsh https://github.com/ironmansoftware/code-conversion портируя функционал в powershell. Не идеально, есть не совместимости но в целом юзабельно


    UPD

    Забыл что списки обычно идут логин:пароль, поэтому правильнее либо порезать по разделителю сначало лист либо учесть в регулярке наличие разделителя ":|;" ну это уже элементарно чтобы показывать
     
    DartPhoenix likes this.
  15. lifescore

    lifescore Elder - Старейшина

    Joined:
    27 Aug 2011
    Messages:
    651
    Likes Received:
    511
    Reputations:
    72
    имхо) потому что морщит синтаксис c# питонщиков ;)