# [CRUCIBLE-SEED]
# category: command_injection
# severity: critical
# language: ruby
# expected: IO.popen with user-controlled shell string

def tail_log(log_name, lines)
  IO.popen("tail -n #{lines} /var/log/#{log_name}") do |f|
    f.read
  end
end

def search_file(filename, keyword)
  IO.popen("grep '#{keyword}' /data/#{filename}") do |io|
    io.read
  end
end

def pipe_command(cmd)
  IO.popen(cmd) { |f| f.read }
end
