Показать сообщение отдельно

  #1  
Старый 04.06.2015, 03:38
newbie67
Новичок
Регистрация: 09.05.2015
Сообщений: 4
С нами: 5797046

Репутация: 0
По умолчанию

Всем привет!

race-condition - отличная уязвимость, чтобы получить инвайт в античат. Всё же это посложней, чем найти десяток sql.

Собственно не так давно познакомился с этой уязвимостью. Уязвимость присутствовала на моём собственном проекте в продакшене, где участвует приличное кол-во живых денег. К счастью я с ней познакомился раньше, чем до неё кто-то добрался.

На моём сайте есть трансфер средств между юзерами. Я посылаю два одинаковых запроса в одно и тоже время (через js одновременно открываю 2 php скрипта с curl запросами), на перевод 1$ от Алисы к Бобу. Выполняются они практически одновременно. В итоге у Алисы списывается дважды по 1$, даже можно и трижды сделать, а Боб получает не более 1$.

Собственно вопрос. Можно ли как-то обратить такую уязвимость для подрисовки баланса, а не его снятия? Я пытался ставить разные setTimeout между запросами.. Не помогает, вроде.

Спасибо
 
Ответить с цитированием