CVE-2022-21661 WordPress: SQL Injection through WP_Query

Discussion in 'Этичный хакинг или пентестинг' started by b3, 22 Aug 2023.

  1. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    Кто имел дело с CVE-2022-21661 WordPress: SQL Injection through WP_Query ?

    Code:
    action=<action_name>&nonce=a85a0c3bfa&query_vars={"tax_query":{"0":{"field":"term_taxonomy_id","terms":["<inject>"]}}}
    Интересует action и nonce
     
  2. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    Сразу видно хорошего мастера, который курсы толкает) nonce поищи по формам на сайте, найдешь 1 подходит ко все формам, только не забудь куки собрать(но это не всегда обязательно). Насчет action, думаю тут нужно брать плагин и в нем смотреть формы и оттуда брать action.
     
    CyberTro1n and b3 like this.
  3. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    дай готовый эксплойт что б я вообще не напрягался лучше, и можешь пиздеть что угодно про мастер не мастер) я даже лайк поставлю)
     
    CyberTro1n likes this.
  4. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    К сожалению нет у меня, я же не хакер, но нашел тебе видео.

     
    b3 likes this.
  5. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    Отличное видео прояснившее многое, видать в моем случае есть какието дополнительные условия т.к. параметры action и nonce чувствительны. Позже разберемся как появиться время на эту задачу. Собственно поэтому тему и создавалась предварительно собрать инфу по тому на что у меня в данный момент нет особо времени.

    ps я гуглил видосики, много разного находил и статьи с зеронайта по баге, но везде скрытые POC. Странно что я не наткнулся на это видео сам. А статья на хакероне даже была специально скрыта от публичного доступа, я решил что бага наверное серьезная в плане сложности. Но судя по видосику человек крутит ее просто и не принужденно.
     
    TADIAMOND likes this.
  6. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    Печальная печаль настигла меня, решил разобраться в баге. Уязвимая версия : 5.8.2 November 10, 2021 на моем таргете 5.6.11 НО данный патч был выпущен May 16, 2023 вот как я повелся просто на цифры в версии не проверив даты патчей вовремя. Так что отбой, потом как нибудь по свободному проверю на локалке уязвимую версию т.к. вопрос с ACTION остался открыт, а вот NONCE можно вырезать, если правильно понял.
    Дефольтные экшны для POST нашел тут: https://github.com/WordPress/WordPress/blob/5.6-branch/wp-admin/admin-ajax.php пробежался интрудером, только heartbeat доступен для гостя, остальное ответ 400 из кода wp_die( '0', 400 );

    PHP:
    $core_actions_post = array(
        
    'oembed-cache',
        
    'image-editor',
        
    'delete-comment',
        
    'delete-tag',
        
    'delete-link',
        
    'delete-meta',
        
    'delete-post',
        
    'trash-post',
        
    'untrash-post',
        
    'delete-page',
        
    'dim-comment',
        
    'add-link-category',
        
    'add-tag',
        
    'get-tagcloud',
        
    'get-comments',
        
    'replyto-comment',
        
    'edit-comment',
        
    'add-menu-item',
        
    'add-meta',
        
    'add-user',
        
    'closed-postboxes',
        
    'hidden-columns',
        
    'update-welcome-panel',
        
    'menu-get-metabox',
        
    'wp-link-ajax',
        
    'menu-locations-save',
        
    'menu-quick-search',
        
    'meta-box-order',
        
    'get-permalink',
        
    'sample-permalink',
        
    'inline-save',
        
    'inline-save-tax',
        
    'find_posts',
        
    'widgets-order',
        
    'save-widget',
        
    'delete-inactive-widgets',
        
    'set-post-thumbnail',
        
    'date_format',
        
    'time_format',
        
    'wp-remove-post-lock',
        
    'dismiss-wp-pointer',
        
    'upload-attachment',
        
    'get-attachment',
        
    'query-attachments',
        
    'save-attachment',
        
    'save-attachment-compat',
        
    'send-link-to-editor',
        
    'send-attachment-to-editor',
        
    'save-attachment-order',
        
    'media-create-image-subsizes',
        
    'heartbeat',
        
    'get-revision-diffs',
        
    'save-user-color-scheme',
        
    'update-widget',
        
    'query-themes',
        
    'parse-embed',
        
    'set-attachment-thumbnail',
        
    'parse-media-shortcode',
        
    'destroy-sessions',
        
    'install-plugin',
        
    'update-plugin',
        
    'crop-image',
        
    'generate-password',
        
    'save-wporg-username',
        
    'delete-plugin',
        
    'search-plugins',
        
    'search-install-plugins',
        
    'activate-plugin',
        
    'update-theme',
        
    'delete-theme',
        
    'install-theme',
        
    'get-post-thumbnail-html',
        
    'get-community-events',
        
    'edit-theme-plugin-file',
        
    'wp-privacy-export-personal-data',
        
    'wp-privacy-erase-personal-data',
        
    'health-check-site-status-result',
        
    'health-check-dotorg-communication',
        
    'health-check-is-in-debug-mode',
        
    'health-check-background-updates',
        
    'health-check-loopback-requests',
        
    'health-check-get-sizes',
        
    'toggle-auto-updates',
    );
     
    TADIAMOND likes this.
  7. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    Немного гуглил данный вопрос, нашел пачку эксплойтов но они все либо для action=test которого тупо нигде нет или его нужно самому создавать до конца не разобрался пока. Но если кому интересно вот как пример:
    https://github.com/0x4E0x650x6F/Wordpress-cve-CVE-2022-21661
    тут используется action=ecsload из Elementor Custom Skin плагина.