タグ

2014年6月11日のブックマーク (3件)

  • Redirecting exec output to a buffer or file

    I'm writing a C program where I fork(), exec(), and wait(). I'd like to take the output of the program I exec'ed to write it to file or buffer. For example, if I exec ls I want to write file1 file2 etc to buffer/file. I don't think there is a way to read stdout, so does that mean I have to use a pipe? Is there a general procedure here that I haven't been able to find?

    Redirecting exec output to a buffer or file
    cco
    cco 2014/06/11
  • システムプログラム(第3週) - プロセスの概念および操作

    電子・情報工学系 追川 修一 <shui @ cs.tsukuba.ac.jp> このページは,次の URL にあります. http://www.coins.tsukuba.ac.jp/~syspro/2005/No3.html システムプログラムのホームページ(2005年度) http://www.coins.tsukuba.ac.jp/~syspro/2005/ からもリンクが張ってあります. 今日の内容 プロセスの概念:プロセスとプログラムの関係,プロセスの構造,機能,属性,生成,パイプ プロセスの操作:コマンド,システムコール,ライブラリ関数 プロセスの概念と機能 プログラムとプロセス プログラムは,CPUが実行できる機械語命令とそれにより処理されるデータの集合(実行形式,ロードモジュール)がファイルに格納されたものである. 他に,ヘッダと呼ばれる部分には機械語命令やデータなどの各

    cco
    cco 2014/06/11
  • IPA ISEC セキュア・プログラミング講座:C/C++言語編 第10章 著名な脆弱性対策:コマンド注入攻撃対策

    第10章 著名な脆弱性対策 コマンド注入攻撃対策 C言語にはその内部でシェルを呼び出してコマンドを実行できる system()、popen() 等のライブラリ関数が備わっているが、これらを使う場合、コマンド注入攻撃への対策が必要である。 シェル シェルは、Unix, GNU/Linux で使われるコマンド解釈実行プログラムである。 シェルはユーザが指定したプログラムを単に起動するのみならず、ファイル入出力のリダイレクト、複数コマンドの組み合わせ実行、パイプ、変数、条件分岐、ループ等プログラミング機能をも含む強力なツールである。 Unix OSの歴史とともに、かつては様々な種類やバージョンのシェルが使われてきたが、最近は bash と呼ばれるシェルが使われることが多い。GNU/Linux においても同様である。 コマンド注入攻撃は、プログラムが外部からの入力を組み入れてシェルコマンド文字列を

    cco
    cco 2014/06/11
    OSコマンドインジェクション