X



トップページLinux
41コメント17KB
MS「C言語は脆弱だな。改良してやんよ」→標準化! [無断転載禁止]©2ch.net
0001login:Penguin
垢版 |
2017/01/16(月) 02:08:13.77ID:TpQvp0+p
知らんかったわー、Linuxを構成している言語とも言える
C言語の標準ライブラリをマイクロソフトが改良してたんだな
伝統的な関数をばっかり切り捨てて、マイクロソフトが作った関数に置きかえられてた
お前ら、C言語を安全にしてくれたマイクロソフトに感謝するんだな

https://ja.wikipedia.org/wiki/Gets
> gets は、C言語における標準入力から1行分の文字列を取り出す関数である。
> この関数はバッファオーバーランを防ぐことが不可能という致命的な脆弱性を持っており、
> 2011年の改定のC11の標準CライブラリやC++14の標準C++ライブラリより廃止された[1]。

https://www.jpcert.or.jp/sc-rules/c-str07-c.html
> C 標準の附属書 K (規定) "Bounds-checking interfaces" [ISO/IEC 9899:2011] は、
> 既存の標準文字列処理関数に代わり、より安全に利用できるように設計された代替関数を規定している。
> たとえば、strcpy()、strcat()、strncpy() および strncat() の代替関数として、
> それぞれ strcpy_s()、strcat_s()、strncpy_s() および strncat_s() 関数を定義している。
>
> 附属書 K の関数は、過去 10 年間に起きた広く知られている多数のセキュリティインシデントに対応して、
> レガシーコードの改善に役立てる目的で Microsoft によって作成された。これらの関数はその後、
> プログラミング言語 C の国際標準化ワーキンググループ(ISO/IEC JTC1/SC22/WG14)へ、標準化のために提案された。

https://www.ipa.go.jp/security/awareness/vendor/programmingv2/contents/c910.html
> 第10章 著名な脆弱性対策
> C11:2011年以降のC言語仕様
> 2011年に発行された C言語仕様には対策が含まれている。
>
> ISO/IEC 9899: 2011
> Information technology -- Programming languages -- C
>
> この「Annex K」に「Bounds-checking interfaces」が規範的(normative)な付録として規定されている。
>
> あふれ対策
> バッファオーバーフロー(あふれ)対策が施された strcpy_s 関数をはじめとする 37の関数が導入された。
0031login:Penguin
垢版 |
2019/06/16(日) 22:08:19.51ID:eF8QEPgd
#include <stdio.h>

int main(void)
{
char s[20];
scanf("%s", s);
printf("%s\n", s);
}

というようなコードを書いたら関西の警察に逮捕されるかも
しれないので注意な。
0032login:Penguin
垢版 |
2019/06/16(日) 22:24:09.96ID:Ougzetyy
#include <stdio.h>

int main(void)
{
char s[20];
scanf("%s", s);
printf(s);
}
これで動くだろ
0033login:Penguin
垢版 |
2019/06/16(日) 22:42:37.39ID:ebku+Tg2
そこじゃないよ。動いてたものも動かなくなるよ。そういうボケなのか?
0034login:Penguin
垢版 |
2019/06/16(日) 22:46:56.46ID:Ougzetyy
>>33
脆弱性追加のボケだったんだけど
0035login:Penguin
垢版 |
2019/06/17(月) 02:24:33.26ID:7Ji278tD
#include <stdio.h>
char s[20];

int main(void)
{
scanf(" %s", s);
printf("%s\n", s);
}
こうだな、やはり
0036login:Penguin
垢版 |
2019/06/17(月) 05:55:47.92ID:cw2IDkgo
なにをいまさら。
オープンソースがソフトウェアの市場競争用の資源として
組み込まれるようになってずいぶん久しいというのに。
GPLのままだったらこうはならなかった。
0037login:Penguin
垢版 |
2019/06/17(月) 06:53:20.17ID:zrsotouL
>>4
OSS派は別にそいつら嫌ってないだろ
FS派なら知らんけど
0038login:Penguin
垢版 |
2019/06/17(月) 09:19:29.25ID:QskFrEhC
>>31
うちの会社だったら、
グループ員の前で混入原因検討という名の吊し上げだな。
0039login:Penguin
垢版 |
2019/06/17(月) 12:10:09.32ID:ZSwb2mVb
Objective-Cの標準化もしてクレメンス…
0040login:Penguin
垢版 |
2020/05/18(月) 06:09:32.85ID:WQPjDuyE
ああああああああああああああああげ
0041login:Penguin
垢版 |
2020/11/02(月) 02:36:33.16ID:WoQ1JQa7
GOlangでいいやめんどくさい
あと>>1はとんでもない時代錯誤感あるな

プロプラ嫌うのと企業のコントリとを一緒くたにしてやがる
レスを投稿する


ニューススポーツなんでも実況