Отправка множества POST запросов

Discussion in 'Уязвимости' started by Limonsket, 15 Mar 2017.

  1. Limonsket

    Limonsket New Member

    Joined:
    28 Oct 2016
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Сразу оговорюсь, что в программировании практически ничего не понимаю, но готов к обучению.
    Требуется на сайт отправить много POST запросов (20-30, а может и более) за достаточно короткое время (2-3 запроса в секунду). С помощью Гугл Хрома скопировал пару запросов, но точно не знаю какое копирование использовать - Copy request headers, Copy as cURL (cmd) и Copy as cURL (bash)

    Вот пример первого запроса:
    Copy request headers
    Code:
    POST /prize/order/ HTTP/1.1
    Host: site.ru
    Connection: keep-alive
    Content-Length: 152
    Origin: https://site.ru
    X-CSRF-Token: sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD+oY3dJlLnVI1XnazqHjuimsw==
    User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript
    X-Requested-With: XMLHttpRequest
    Referer: https://site.ru/lk/
    Accept-Encoding: gzip, deflate, br
    Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
    Cookie: _ym_uid=1487017920750407080; _ym_isad=2; _dc_gtm_UA-64233422-1=1; _ga=GA1.3.393349717.1487017919; _gat_UA-64233422-1=1; _site_ru-session=STRRbndMZncrTldRWU9TRmh1T0VMcnk2RFp6eUJQZlFoa3poMWNxWGdDRWpRWFVIWURZZnZQVHVzZDVnODAwUzF5bThOZ1lmdlRtZUp5UXQvZ1ZaNllwTWZvbm0wQkhjZkZUWGh5VElCc1dMZHNaaHhBVnE4VVBZWVNFMTVLT0ZXNW5xR21Fc2V3V053MmJnZ1BRTGNDR252eEpjZHRLQSthTGxWV0NwZUIxVURRdENhcU02dDJZWXI4V2lWUEtsQ0dEclZjYnJYSW9hcFZuRlNkWkJZS3JrK29pdGxCYmF4ekgyK050NUFQbVBDbno1SVRWa3NLcll0TmhLVGl2STV4UmUydkM4WW9VelU4SFc4YWRMQVhPNGRpOGR1OGp2VkY0WEhqTURGdCtLUDlVRDB2aG5FcFJ0ZEpvVFJvM3EtLWw5ZlMzeDRmK2gvMTkzTDNMdlFpTlE9PQ%3D%3D--dc160cf9c36a18db6d062612605f390a2974b328; _ga=GA1.2.393349717.1487017919; _ym_visorc_30954526=w
    
    Copy as cURL (cmd)
    Code:
    curl "https://site.ru/prize/order/" -H "Cookie: _ym_uid=1487017920750407080; _ym_isad=2; _dc_gtm_UA-64233422-1=1; _ga=GA1.3.393349717.1487017919; _gat_UA-64233422-1=1; _site_ru-session=STRRbndMZncrTldRWU9TRmh1T0VMcnk2RFp6eUJQZlFoa3poMWNxWGdDRWpRWFVIWURZZnZQVHVzZDVnODAwUzF5bThOZ1lmdlRtZUp5UXQvZ1ZaNllwTWZvbm0wQkhjZkZUWGh5VElCc1dMZHNaaHhBVnE4VVBZWVNFMTVLT0ZXNW5xR21Fc2V3V053MmJnZ1BRTGNDR252eEpjZHRLQSthTGxWV0NwZUIxVURRdENhcU02dDJZWXI4V2lWUEtsQ0dEclZjYnJYSW9hcFZuRlNkWkJZS3JrK29pdGxCYmF4ekgyK050NUFQbVBDbno1SVRWa3NLcll0TmhLVGl2STV4UmUydkM4WW9VelU4SFc4YWRMQVhPNGRpOGR1OGp2VkY0WEhqTURGdCtLUDlVRDB2aG5FcFJ0ZEpvVFJvM3EtLWw5ZlMzeDRmK2gvMTkzTDNMdlFpTlE9PQ^%^3D^%^3D--dc160cf9c36a18db6d062612605f390a2974b328; _ga=GA1.2.393349717.1487017919; _ym_visorc_30954526=w" -H "Origin: https://site.ru" -H "Accept-Encoding: gzip, deflate, br" -H "X-CSRF-Token: sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD+oY3dJlLnVI1XnazqHjuimsw==" -H "Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" -H "Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" -H "Referer: https://site.ru/lk/" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" --data "utf8=^%^E2^%^9C^%^93^&authenticity_token=sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD^%^2BoY3dJlLnVI1XnazqHjuimsw^%^3D^%^3D^&prize^%^5BprizeId^%^5D=1604" --compressed
    Copy as cURL (bash)
    Code:
    curl 'https://site.ru/prize/order/' -H 'Cookie: _ym_uid=1487017920750407080; _ym_isad=2; _dc_gtm_UA-64233422-1=1; _ga=GA1.3.393349717.1487017919; _gat_UA-64233422-1=1; _site_ru-session=STRRbndMZncrTldRWU9TRmh1T0VMcnk2RFp6eUJQZlFoa3poMWNxWGdDRWpRWFVIWURZZnZQVHVzZDVnODAwUzF5bThOZ1lmdlRtZUp5UXQvZ1ZaNllwTWZvbm0wQkhjZkZUWGh5VElCc1dMZHNaaHhBVnE4VVBZWVNFMTVLT0ZXNW5xR21Fc2V3V053MmJnZ1BRTGNDR252eEpjZHRLQSthTGxWV0NwZUIxVURRdENhcU02dDJZWXI4V2lWUEtsQ0dEclZjYnJYSW9hcFZuRlNkWkJZS3JrK29pdGxCYmF4ekgyK050NUFQbVBDbno1SVRWa3NLcll0TmhLVGl2STV4UmUydkM4WW9VelU4SFc4YWRMQVhPNGRpOGR1OGp2VkY0WEhqTURGdCtLUDlVRDB2aG5FcFJ0ZEpvVFJvM3EtLWw5ZlMzeDRmK2gvMTkzTDNMdlFpTlE9PQ%3D%3D--dc160cf9c36a18db6d062612605f390a2974b328; _ga=GA1.2.393349717.1487017919; _ym_visorc_30954526=w' -H 'Origin: https://site.ru' -H 'Accept-Encoding: gzip, deflate, br' -H 'X-CSRF-Token: sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD+oY3dJlLnVI1XnazqHjuimsw==' -H 'Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4' -H 'User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' -H 'Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript' -H 'Referer: https://site.ru/lk/' -H 'X-Requested-With: XMLHttpRequest' -H 'Connection: keep-alive' --data 'utf8=%E2%9C%93&authenticity_token=sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD%2BoY3dJlLnVI1XnazqHjuimsw%3D%3D&prize%5BprizeId%5D=1604' --compressed
    Вот второй запрос:
    Copy request headers
    Code:
    POST /prize/order/ HTTP/1.1
    Host: site.ru
    Connection: keep-alive
    Content-Length: 152
    Origin: https://site.ru
    X-CSRF-Token: sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD+oY3dJlLnVI1XnazqHjuimsw==
    User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript
    X-Requested-With: XMLHttpRequest
    Referer: https://site.ru/lk/
    Accept-Encoding: gzip, deflate, br
    Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
    Cookie: _ym_uid=1487017920750407080; _ym_isad=2; _ga=GA1.3.393349717.1487017919; _ga=GA1.2.393349717.1487017919; _site_ru-session=U2pCazhUQ1BNTU9NNFdoLytRcDdjUlNPUVQzY2FnTHpVSzdBSjFHUVQ2OGZweHR6V1YybU8xRDQ1RHF1ZEhTUXJRMy9PdG1KVzJ6S3paellvU3U5YzBzODV2Z2tFYTZ1MEUrVHJwTTBVR05PZURySGlqOU5kcEg3Nm03OVorUm9jd1FkSVIrZktPd1JtVDVCZUJ2eU8rc1F6blFqaU5yTkRra3RONFF2V3c1emZtNjVHbDRoc2VXaEpBWmU0Njltc1RCLzJVVnVEZFcrZUxMMXdRUEJXUXNkMmx1VEc2NU5TNE1XVjdDOGpjK3ZuNDEzSGVhTnNRNXR4TlhFTFRyZUU4L2FuZUQzL0FjemNlbzM3TEsvWmNBOGVBeU9SZXlNWG5ucmNPeFhBcDQ9LS1BUlZiYnZrcHVwUndwZFdCOS9MNWx3PT0%3D--d2d0e7356ec848a3789ef27224394e22de20e104
    
    Copy as cURL (cmd)
    Code:
    curl "https://site.ru/prize/order/" -H "Cookie: _ym_uid=1487017920750407080; _ym_isad=2; _ga=GA1.3.393349717.1487017919; _ga=GA1.2.393349717.1487017919; _site_ru-session=U2pCazhUQ1BNTU9NNFdoLytRcDdjUlNPUVQzY2FnTHpVSzdBSjFHUVQ2OGZweHR6V1YybU8xRDQ1RHF1ZEhTUXJRMy9PdG1KVzJ6S3paellvU3U5YzBzODV2Z2tFYTZ1MEUrVHJwTTBVR05PZURySGlqOU5kcEg3Nm03OVorUm9jd1FkSVIrZktPd1JtVDVCZUJ2eU8rc1F6blFqaU5yTkRra3RONFF2V3c1emZtNjVHbDRoc2VXaEpBWmU0Njltc1RCLzJVVnVEZFcrZUxMMXdRUEJXUXNkMmx1VEc2NU5TNE1XVjdDOGpjK3ZuNDEzSGVhTnNRNXR4TlhFTFRyZUU4L2FuZUQzL0FjemNlbzM3TEsvWmNBOGVBeU9SZXlNWG5ucmNPeFhBcDQ9LS1BUlZiYnZrcHVwUndwZFdCOS9MNWx3PT0^%^3D--d2d0e7356ec848a3789ef27224394e22de20e104" -H "Origin: https://site.ru" -H "Accept-Encoding: gzip, deflate, br" -H "X-CSRF-Token: sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD+oY3dJlLnVI1XnazqHjuimsw==" -H "Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" -H "Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" -H "Referer: https://site.ru/lk/" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" --data "utf8=^%^E2^%^9C^%^93^&authenticity_token=yYvOT6HsfFflHO8NCEqIQ2qo7QTk7NCJlUKvtVFKWo3M7hpZMo50vuyVLEivAt^%^2F6DcJsp0r8GpkQzDQMrn8R6w^%^3D^%^3D^&prize^%^5BprizeId^%^5D=1604" --compressed


    Copy as cURL (bash)
    Code:
    curl 'https://site.ru/prize/order/' -H 'Cookie: _ym_uid=1487017920750407080; _ym_isad=2; _ga=GA1.3.393349717.1487017919; _ga=GA1.2.393349717.1487017919; _site_ru-session=U2pCazhUQ1BNTU9NNFdoLytRcDdjUlNPUVQzY2FnTHpVSzdBSjFHUVQ2OGZweHR6V1YybU8xRDQ1RHF1ZEhTUXJRMy9PdG1KVzJ6S3paellvU3U5YzBzODV2Z2tFYTZ1MEUrVHJwTTBVR05PZURySGlqOU5kcEg3Nm03OVorUm9jd1FkSVIrZktPd1JtVDVCZUJ2eU8rc1F6blFqaU5yTkRra3RONFF2V3c1emZtNjVHbDRoc2VXaEpBWmU0Njltc1RCLzJVVnVEZFcrZUxMMXdRUEJXUXNkMmx1VEc2NU5TNE1XVjdDOGpjK3ZuNDEzSGVhTnNRNXR4TlhFTFRyZUU4L2FuZUQzL0FjemNlbzM3TEsvWmNBOGVBeU9SZXlNWG5ucmNPeFhBcDQ9LS1BUlZiYnZrcHVwUndwZFdCOS9MNWx3PT0%3D--d2d0e7356ec848a3789ef27224394e22de20e104' -H 'Origin: https://site.ru' -H 'Accept-Encoding: gzip, deflate, br' -H 'X-CSRF-Token: sIfxfFTx8MQNTxgKpUxoEQQdyDcXxelFYuWhPnHd7dW14iVqx5P4LQTG208CBD+oY3dJlLnVI1XnazqHjuimsw==' -H 'Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4' -H 'User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' -H 'Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript' -H 'Referer: https://site.ru/lk/' -H 'X-Requested-With: XMLHttpRequest' -H 'Connection: keep-alive' --data 'utf8=%E2%9C%93&authenticity_token=yYvOT6HsfFflHO8NCEqIQ2qo7QTk7NCJlUKvtVFKWo3M7hpZMo50vuyVLEivAt%2F6DcJsp0r8GpkQzDQMrn8R6w%3D%3D&prize%5BprizeId%5D=1604' --compressed


    Некоторые параметры отличаются и когда к примеру с помощью аддона Tamper Data я отловил запрос и отправил его спустя 2-3 минуты - он отправился (на сайте уведомление появилось), а когда пытаешься с теме же параметрами его повторно отправить - ничего.
    Допустим я с помощью Tamper Data отловлю эти запросы и не дам им отправиться, а потом скопирую в блокнот, то можно как то их отправить с указанными требованиями (2-3 запроса в секунду)? И как это осуществить наиболее доступным способом?
     
  2. pas9x

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

    Joined:
    13 Oct 2012
    Messages:
    428
    Likes Received:
    579
    Reputations:
    47
    А зачем тебе это? Сайт дудосить собрался?

    Ну без кодинга тут не обойдёшься. Разве что может существуют какие-то повторялки запросов, но я таких не знаю.

    Так ты curl этот сначала установи чтоб копировать запрос с ним. Ссылочки с официальных сайтов:
    https://curl.haxx.se/download.html
    http://www.paehl.com/open_source/?CURL_7.52.1
    Сам курл: http://www.paehl.com/open_source/?download=curl_752_1_ssl.zip

    Можно написать bat-ник и в нём прописать много запусков курла с нужными параметрами. Либо загнать один запуск курла в цикл. Ну и для эффекта многопоточности запустить одновременно несколько этих батников.
     
  3. Limonsket

    Limonsket New Member

    Joined:
    28 Oct 2016
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Скажем так, захотелось поучаствовать в акции с гарантированными призами, призы выкладывают в определенное время (00.00 по Мск) и в оч ограниченном кол-ве. И за две недели я так и не смог не одного взять - сайт можно сказать лежит от множества запросов, а через пару минут уже призов нет. Кто то из участников проговорился, что можно использовать какие то проги.

    Лучше скажите, по двум представленным выше запросам, можно ли это как то автоматизировать?
    Строки Content-Length, Cookie:, authenticity_token в обоих запросах отличаются, а вот остальные - полностью идентичные.
     
  4. pas9x

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

    Joined:
    13 Oct 2012
    Messages:
    428
    Likes Received:
    579
    Reputations:
    47
    Здесь целесообразно отслеживать появление товара. И как только он появляется - автоматом его забирать.
    Т.е. скрипт толжен работать круглосуточно, и например каждые 3 секунды мониторить а не выложили-ли призы.

    Смотря какой сайт и как он сделан. Вслепую тебе никто не даст ответ. И, судя по топику там используется csrf-токен который наверняка при каждом заходе на страницу меняется. Без умения кодинга лучше не пытаться что-либо делать, только время потратишь.
     
  5. censored!

    censored! Green member

    Joined:
    2 Nov 2004
    Messages:
    1,160
    Likes Received:
    299
    Reputations:
    151
    _________________________
    DezMond™ and Ch3ck like this.
  6. Limonsket

    Limonsket New Member

    Joined:
    28 Oct 2016
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Это не требуется, я точно знаю (как и другие участники), что приps появляются ровно в 00:00 по Мск каждый день. Но когда все начинают одновременно посылать свои запросы, то если заранее на страницу не зайти будет 504 gateway time-out. Но у кого то получается заказать, а кто то (вроде меня) уже вторую неделю ни с чем(((

    Скачал уже, еще пытался найти "живые" ссылки на Denyo Launch III (antiturk), но не нашел.

    А можете помочь с Naviscope и InetCrack? Я пытался и через ХР и через 7 отлочить POST запрос через Naviscope, но безрезультатно. Хотя он работает и запросы отлавливает, но не тот который мне нужно.
    Если взять Temper Data или интсрумент разработчика из Гугл Хром, то в какой форме в InetCrack вставлять? Можете на примере из первого поста написать, чтобы было хоть немного понятнее?
     
  7. censored!

    censored! Green member

    Joined:
    2 Nov 2004
    Messages:
    1,160
    Likes Received:
    299
    Reputations:
    151
    Из ГуглХрома копируй Copy request headers и можешь прям сразу вставлять в InetCrack.

    Все зависит от сайта, но напрягает X-CSRF-Token. Но в любом случае попробуй с малого - за N минут до начала заходишь на сайт. В одной вкладке открыл страницу с призом, в другой открыл корзину (скорее всего она там есть?). Переключился на вкладку с призом, тыкнул в кнопку, взял заголовок, его пихнул в InetCrack, там поставил галочку на Repeat Enable, переключился на вкладку с корзиной. Как поймешь что скоро - жми в InetCrack-е на SEND Packet и в браузере рефрешь вкладку с корзиной - чтобы как туда приз свалиться - завершить оформление.

    p.s. Но не видя сам сайт - тяжело что-либо конкретно посоветовать. И, скорее всего, совет будет один - надо писать скрипт (php+cUrl).
     
    _________________________
    #7 censored!, 16 Mar 2017
    Last edited: 16 Mar 2017
  8. Limonsket

    Limonsket New Member

    Joined:
    28 Oct 2016
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Есть хорошие и плохие новости.
    Хорошая - с помощью Инструментов разработчика в Firefox (возможно это работает и в Гугл Хром, не пробовал), если нажать с интересующим запросом "Изменить и снова отправить" - то запрос проходит. То есть приз заказывается. Но каждый раз жать на кнопку и отправлять запрос заново - сплошной геммор. Нужна автоматизация.
    Плохая - пытался воспользоваться программой InetCrack - не получается. Возможно что то не так делаю.

    А данные POST разве не нужно копировать?
    Code:
    utf8=%E2%9C%93&authenticity_token=WY%2BYWD2UiovQusVqG%2FtSxmL45bitc5KctofsuykvK%2F3xVeC1DmvNioasQmBPb1aASMtQ%2ByrzSFYZbxdqaOtvHg%3D%3D&prize%5BprizeId%5D=1598
    Вот эта самая строка prizeId%5D=1598 как бы определяет какой приз я хочу заказать. У драгого приза - другой 4-значный номер в конце.

    Нет, корзины нет. Захожу под своим логином и паролем на сайт, там несколько кнопок - каждая для своего приза.

    Правильно я понимаю, что если я установлю cURL, то можно через командную строку отправить данный POST запрос большое кол-во раз за опред время, написав скрипт?
     
  9. censored!

    censored! Green member

    Joined:
    2 Nov 2004
    Messages:
    1,160
    Likes Received:
    299
    Reputations:
    151
    А они разве не содержаться в скопированном заголовке?

    Эти id для одного товара могут быть разные? Каждый день показываются разные товары?

    Надо написать скрипт. С cURL это будет проще. Этот скрипт будет логинится в личный кабинет, заходить на страницу с призами, выдирать token, возможно проверять - появился ли определенный товар с определенным id и если все ок - заказывать.
     
    _________________________
  10. Limonsket

    Limonsket New Member

    Joined:
    28 Oct 2016
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Нет, данная строка отдельно копируется через "скопировать post данные" в инструментах разработчика

    Наверное надо было сразу оговорился, что призы разные и каждому присвоен свой id, он не меняется. Но самые "жирные" призы расхватывают в первые минуты после полуночи.
     
  11. censored!

    censored! Green member

    Joined:
    2 Nov 2004
    Messages:
    1,160
    Likes Received:
    299
    Reputations:
    151
    Тогда cUrl.
     
    _________________________
  12. FriLL

    FriLL Member

    Joined:
    14 Sep 2008
    Messages:
    90
    Likes Received:
    24
    Reputations:
    8
    Я полным полно писал этих сканеров/парсеров/отправлятелей на python
    Автор покажи сайт, посмотрим что там
     
Loading...