À quel point JavaScript peut-il être dangereux?

9

J'ai récemment commencé à utiliser NoScript (en plus d'ABP). Il a fallu un peu de temps pour s'y habituer et peut parfois nécessiter un clic lors de la visite d'un nouveau site pour savoir pourquoi le site ne fonctionne pas et d'où je dois autoriser JavaScript. La sécurité supplémentaire en vaut-elle la peine?

Une partie de la controverse est discutée ici . Je suppose que cela se résume à une question de savoir si JavaScript est une menace réelle pour votre ordinateur ou non. Des réflexions à ce sujet?

Gordon Gustafson
la source
2
Essayez tinyurl.com/y8qdwsv si vous sentez que la navigation sans NoScript est une bonne idée.
Josh K
1
Essayez tinyurl.com/ydwxk63 si vous voulez vraiment rire.
Hasaan Chop
@JoshK owwww, CPU et mem monte en flèche!
Maxim Zaslavsky
1
Et pas mal de choses se bloquent probablement. C'est la 2.4MB de iframe« s
Josh K
@Josh K: Je suis assez déçu que FireFox ait permis cela. Opera présente un comportement différent (pas aussi ennuyeux), mais qui s'éloigne toujours. Chrome ne fait pas trop de bruit du tout; il semble limiter la fréquence à laquelle il peut apparaître. (Oui, j'ai été assez stupide pour l'essayer 3 fois)
mpen

Réponses:

3

La raison pour laquelle NoScript existe même en premier lieu n'est pas nécessairement JavaScript en soi , mais des failles de sécurité dans le navigateur. Dans le passé, Firefox et d'autres navigateurs présentaient de nombreuses failles de sécurité qui ont permis à JavaScript malveillant de faire du mal au système d'un utilisateur. (Dans de nombreux cas, le code natif pourrait être exécuté via JavaScript, ce qui signifie qu'un site Web pourrait potentiellement faire quoi que ce soit à votre ordinateur.) Il existe également une possibilité d' attaques de script intersites, comme l'a dit @Eric.

Cependant, ces menaces sont très rares, sauf si vous naviguez régulièrement sur des sites Web louches, donc la question de savoir si NoScript en vaut la peine est à vous. Personnellement, je ne pense pas que cela en vaille la peine, d'autant plus que de plus en plus de sites Web nécessitent JavaScript pour fonctionner, ce qui signifie que vous serez constamment en liste blanche de scripts ou de domaines entiers (et à ce stade, vous battez certains l'avantage de l'utiliser en premier lieu).

Sasha Chedygov
la source
4

Voir http://en.wikipedia.org/wiki/Cross-site_scripting et http://en.wikipedia.org/wiki/Cross-site_request_forgery pour des exemples de la façon dont une personne malveillante peut causer des problèmes en utilisant JavaScript.

FWIW - Personnellement, je ne roule pas avec NoScript car je pense que c'est un casse-tête majeur. Parfois, il suffit de regarder où vous naviguez et d'espérer le meilleur.

Eric
la source
2
Je ne sais pas, je pense que ces deux préoccupations sont plus importantes pour le développeur Web que pour l'utilisateur. Je suppose qu'un site mal conçu est sensible à ces types de défauts qui pourraient à leur tour compromettre les données de l'utilisateur .. mais vraiment, quel genre de choses vont-ils voler? Votre nom d'utilisateur sur un forum minable? Whoopy doo. Le seul endroit où cela compte, c'est lorsque vous avez des informations de carte de crédit et d'autres choses, mais vous ne devriez jamais entrer ce type d'informations sur un site auquel vous ne faites pas confiance en premier lieu.
mpen
2
@Mark, Comprenez-vous ce qu'est le CSRF? Supposons que votre navigateur soit ouvert à votre banque et un autre onglet ouvert à un site malveillant. Avec un CSRF, le site malveillant peut inciter votre navigateur à demander à votre banque de transférer tout votre argent de votre compte.
Zoredache
1
Vous pouvez vous protéger du CSRF en vous déconnectant des sites sensibles avant d'aller ailleurs. Bien que j'aimerais penser que les banques seraient conçues sans ce trou flagrant, je sais qu'elles ne l'ont pas été par le passé.
Zurahn
1
  • Un code JavaScript mal écrit ou malveillant peut bloquer votre navigateur ou le bloquer.
  • JavaScript peut être utilisé pour provoquer des téléchargements en voiture

  • Mais, utilisé correctement et comme prévu, JavaScript améliore l'expérience de navigation Web

Il y a des avantages et des inconvénients, mais dans l'ensemble, cela en vaut la peine. Pour mémoire, j'utilise toujours l'extension NoScript, activant sélectivement les scripts pour les sites que je visite régulièrement et dont je m'attends à ce qu'ils soient sûrs.

Grant Palin
la source
0

Bien qu'il y ait techniquement eu des exploits dans le traitement d'image et le rendu XML et similaires, à toutes fins utiles, il existe actuellement trois vecteurs d'attaque: l'ingénierie sociale (piéger l'utilisateur, obliger l'utilisateur à exécuter un fichier malveillant), des plugins (Flash) et JavaScript.

JavaScript permet directement l'exécution des instructions, et c'est particulièrement mauvais dans le cas d'Internet Explorer en raison de la décision et de la mise en œuvre incroyablement médiocres des contrôles ActiveX dans le passé (bien que Microsoft se soit amélioré à cet égard). Vous n'avez pas non plus besoin d'aller nécessairement sur des sites louches, car les annonces sont diffusées en JavaScript et il existe plusieurs cas où des publicités malveillantes ont été diffusées sur des sites légitimes.

Réponse courte: si vous vous inquiétez des menaces, vous devez vous préoccuper de trois choses: Internet Explorer, Flash et JavaScript.

Zurahn
la source
"JavaScript permet directement l'exécution des instructions" - source? Cela est vrai dans les anciennes versions d'IE en raison d'ActiveX, mais de nos jours cela ne se produit que lorsque des failles de sécurité sont trouvées, et celles-ci sont généralement corrigées assez rapidement. JavaScript lui-même ne peut en fait pas faire grand-chose à votre système - tout au plus, il pourrait ralentir ou planter votre navigateur.
Sasha Chedygov
2
JavaScript est un langage de programmation, vous écrivez des instructions. Je ne fais pas référence aux instructions au niveau du code machine, je fais référence au langage lui-même - que l'exécution de JavaScript exécute du code; Ni plus ni moins. Contrastable en HTML et CSS (à part eval dans IE) qui sont purement descriptifs. Pour cette raison, la probabilité de vulnérabilités via JavaScript est astronomiquement plus élevée - JavaScript n'est bénin que s'il n'y a pas d'erreurs d'implémentation ou de spécifications, ce qui ne se produira jamais.
Zurahn
0

Très peu d'ordinateurs si des ordinateurs connectés à Internet sont à l'abri de l'exploitation. On n'avait même pas besoin de MeltDown ni de Spectre pour obtenir de la publicité malveillante sur votre machine, cela provenait de sites Web de confiance comme il l'a toujours fait.

Voici pourquoi l'épidémie de publicités malveillantes s'est aggravée l'an dernier. DAN GOODIN - 23/01/2018, 05h00

Dans les années 1990, Netscape Navigator avait signé javaScript signé numériquement, nous avons besoin d'une version améliorée de cela maintenant.

rjt
la source