Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Taint and #718

p5pRT opened this issue Oct 15, 1999 · 1 comment

Taint and #718

p5pRT opened this issue Oct 15, 1999 · 1 comment


Copy link

p5pRT commented Oct 15, 1999

Migrated from (status was 'resolved')

Searchable as RT1620$

Copy link

p5pRT commented Oct 15, 1999


Summary of my perl5 (5.0 patchlevel 4 subversion 4) configuration​:
  osname=linux, osvers=2.0.34, archname=i386-linux
  uname='linux 2.0.34 #1 thu may 7 10​:17​:44 edt 1998
i686 unk
nown '
  hint=recommended, useposix=true, d_sigaction=define
  bincompat3=y useperlio=undef d_sfio=undef
  cc='cc', optimize='-O2', gccversion=
  cppflags='-Dbool=char -DHAS_BOOL -I/usr/local/include'
  ccflags ='-Dbool=char -DHAS_BOOL -I/usr/local/include'
  stdchar='char', d_stdstdio=define, usevfork=false
  intsize=4, longsize=4, ptrsize=undef, doublesize=undef
  alignbytes=4, usemymalloc=n, prototype=define
  Linker and Libraries​:
  ld='cc', ldflags =' -L/usr/local/lib'
  libpth=/usr/local/lib /lib /usr/lib
  libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt
  libc=, so=so
  useshrplib=false, libperl=libperl.a
  Dynamic Linking​:
  dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
  cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'

Characteristics of this binary (from libperl)​:
  Locally applied patches​:
  MAINT_TRIAL_4 - 5.004_05 maintenance trial 4
  Built under linux
  Compiled at Sep 10 1998 02​:16​:22

I get the following message​:

Insecure dependency in eval while running with -T switch at
/usr/lib/perl5/ line 1165, <IN> chunk 4.

Untaining the variables via a m/(.*)/ before line 1165 makes the error go
away. I can only produce the error under the following (rather unusual)

I run the following CGI script via the web server​:


export PERLDB_OPTS='tty=/dev/ttyqa'

The "epl" script has this​:

#!/usr/bin/perl -Td

$| = 1;
print "Content-type​: text/plain\n\n";

(The idea is to run with taint mode on, and have the debugger talk to an
xterm in another window which is running "sleep 1d |cat >/dev/null", thus
allowing me to debug the CGI script.)

Everything works well up to this point, and I can step through or run the
program. But if I type in any sort of expression to be evalled, the
debugger gives me a notice that the program has terminated, and the error
about the insecure eval gets logged in the Apache logs. Example​:

Loading DB routines from version 1.01
Emacs support available.

Enter h or `h h' for help.

3​: $| = 1;
  DB<1> s 10
2085​: "Debugged program terminated. Use `q' to quit or `R' to
  DB<2> q

  That's all the pertinent information, I think.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet

No branches or pull requests

1 participant