Π‘Π°ΠΌΡ‹ΠΉ популярный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Java-ΠΊΠΎΠ΄Π° Π½Π° StackOverflow оказался с ошибкой

Π‘Π°ΠΌΡ‹ΠΉ популярный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Java-ΠΊΠΎΠ΄Π°, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° StackOverflow, оказался с ошибкой, приводящСй ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… условиях Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. РассматриваСмый ΠΊΠΎΠ΄ Π±Ρ‹Π» Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½ Π² 2010 Π³ΠΎΠ΄Ρƒ ΠΈ Π½Π°ΠΊΠΎΠΏΠΈΠ» Π±ΠΎΠ»Π΅Π΅ тысячи Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ‹Π» скопирован Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΈ встрСчаСтся Π² рСпозиториях Π½Π° GitHub ΠΎΠΊΠΎΠ»ΠΎ 7 тысяч Ρ€Π°Π·. ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΡˆΠΈΠ±ΠΊΡƒ нашли Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π² свои ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, Π° ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π²Ρ‚ΠΎΡ€ совСта.

РассматриваСмый ΠΊΠΎΠ΄ осущСствлял ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°ΠΉΡ‚ΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π² Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 110592 ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Π» Π² «110.6 kB» ΠΈΠ»ΠΈ «108.0 KiB». Код Π±Ρ‹Π» ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΊΠ°ΠΊ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π»ΠΎΠ³Π°Ρ€ΠΈΡ„ΠΌΠΎΠ² Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ€Π°Π½Π΅Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ совСта, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ»Π°ΡΡŒ Π½Π° основС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ дСлСния исходного значСния Π² Ρ†ΠΈΠΊΠ»Π΅ Π½Π° 1018, 1015, 1012, 1019,
106, 103 ΠΈ 100, Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ большС исходного значСния Π² Π±Π°ΠΉΡ‚Π°Ρ…. Из-Π·Π° Π½Π΅Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½Ρ‹Ρ… вычислСний Π² ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ (ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ значСния long) Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… чисСл (эксабайт) Π½Π΅ соотвСтствовал Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Автор совСта Ρ‚Π°ΠΊΠΆΠ΅ попытался ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ копирования ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π±Π΅Π· ссылки Π½Π° источник ΠΈ Π±Π΅Π· указания Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ. По Π΄Π°Π½Π½Ρ‹ΠΌ Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠ³ΠΎ исслСдования 46% Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² скопировали ΠΊΠΎΠ΄ со StackOverflow Π±Π΅Π· указания Π°Π²Ρ‚ΠΎΡ€Π°, 75% Π½Π΅ Π·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ CC BY-SA, Π° 67% Π½Π΅ Π·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ это ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ указания авторства.

По Π΄Π°Π½Π½Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ исслСдования, ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΠ΄Π° сопряТСно Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с риском наличия Π² ΠΊΠΎΠ΄Π΅ ошибок, Π½ΠΎ ΠΈ уязвимостСй. НапримСр, ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π² Π½Π° StackOverflow 72483 ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΠ΄Π° Π½Π° C++, исслСдоватСли выявили ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Π΅ уязвимости Π² 69 ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… (Ρ‡Ρ‚ΠΎ составляСт 0.09%), входящих Π² список Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ. ΠŸΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π² Π·Π°Ρ‚Π΅ΠΌ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ этого ΠΊΠΎΠ΄Π° Π½Π° GitHub, Π±Ρ‹Π»ΠΎ выявлСно, Ρ‡Ρ‚ΠΎ скопированный со StackOverflow уязвимый ΠΊΠΎΠ΄ присутствуСт Π² 2859 ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru