Javascript на лету

Discussion in 'Песочница' started by leksadin, 20 Jan 2016.

  1. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12
    и вновь прошу помощи) Весь день гуглю.

    на сайте javascript выполняется на стороне клиента (т.е. моего браузера). У меня стоит Iceweasel (Firefox). Как мне на лету отредактировать скрипт ?

    Знаю, что в хроме такое вроде бы возможно. А у меня со стандартным отладчиком и фаербагом не получается. HTML код я могу подменять на лету, сразу срабатывает. А вот скрипты правлять не дают.. только могу точки остановки для отладки включать. Но редактировать код - нельзя((( Может, что не правильно делаю. Объясните пожалуйста.

    P.s. Нужно это вот для чего. На сайте есть форма для текста.Там стоят проверки в html на символы, против xss. Но они на стороне клиента. Поэтому я могу их выпилить. Аналогично, есть ещё доп. защита в виде обработки текста с помощью javascript. И тоже на стороне клиента. Соответственно, подредактировав его - я смогу запостить xss.
     
  2. private_static

    Joined:
    19 May 2015
    Messages:
    118
    Likes Received:
    76
    Reputations:
    22
    тоже изучал недавно эту проблему
    всё что удалось нарыть на англоязычных ресурсах - firefox не разрешает править js сайта, в браузерах основанных на хромиуме - можно
    в итоге обошёл проверку бурпом
     
  3. H@rd

    H@rd Member

    Joined:
    18 May 2015
    Messages:
    27
    Likes Received:
    21
    Reputations:
    1
    Можно перезаписать обработчики событий - нажатия клавиш/onclick формы - т.е. в зависимости от того, когда срабатывает защита.
     
    leksadin likes this.
  4. altblitz

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

    Joined:
    5 Jun 2009
    Messages:
    3,691
    Likes Received:
    3,145
    Reputations:
    236
    У меня для вас - плохие новости.
    Цена на жижу упала ниже некуда, и эти потехи с XSS и JS - отменили ещё в 2001 году, в браузере Netscape.

    [​IMG]
     
  5. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    если данные формы отправляются не через XMLHttpRequest() - отключи просто джаваскрипт у себя в браузере и отправляй
     
  6. grimnir

    grimnir Members of Antichat

    Joined:
    23 Apr 2012
    Messages:
    1,114
    Likes Received:
    830
    Reputations:
    231
    _________________________
    leksadin likes this.
  7. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12
    Не хочется ставить хромы...
     
  8. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12
    Но хромиумы же это могут.
     
  9. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12

    Если не сложно - чуть-чуть подробнее, пожалуйста
     
  10. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12
    не сработало( тогда вообще не отправляется пост.
     
  11. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12
    Интересная штука, спасибо. Попытаюсь сейчас найти, может ли этот аддон не просто свои скрипты вешать, а подменять.
     
  12. private_static

    Joined:
    19 May 2015
    Messages:
    118
    Likes Received:
    76
    Reputations:
    22
    а ты лучше знаеш что сделай, ты найди сорцы фаерфокса, или декомпилируй, покопайся в десятках или сотнях тысяч строк с++ кода, реализуй свой функционал по редактированию js и скомпилируй
    вот это вообще тру будет
    курлом отправь запрос и не еби мозг
     
    #12 private_static, 21 Jan 2016
    Last edited: 21 Jan 2016
  13. H@rd

    H@rd Member

    Joined:
    18 May 2015
    Messages:
    27
    Likes Received:
    21
    Reputations:
    1
    Например, в HTML присутствует такой JavaScript-код:
    <script type="text/javascript">
    document.getElementById('but').onclick = function(){
    alert('default action');
    }
    </script>
    <input type="button" id="but" value="click_me" />
    ==================
    А мы в консоли firebug'а прописываем следующий код
    document.getElementById('but').onclick = function(){
    alert('rewrited action');
    }

    И получается, перезаписали обработчик нажатия на кнопку
     
    Ruslan1993it, grimnir and leksadin like this.
  14. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12
    Идея переписать фаерфокс мне понравилась гораздо больше. Ну, или аддончик накатать. Вечером обязательно займусь ;)
     
  15. leksadin

    leksadin Level 8

    Joined:
    19 Jan 2016
    Messages:
    128
    Likes Received:
    60
    Reputations:
    12
    Супер, спасибо =) всё сработало.