[HSC] Multiple transversal bug in vis

Credit: spher3
Risk: Medium
Local: No
Remote: Yes
CWE: CWE-Other

CVSS Base Score: 5/10
Impact Subscore: 2.9/10
Exploitability Subscore: 10/10
Exploit range: Remote
Attack complexity: Low
Authentication: No required
Confidentiality impact: Partial
Integrity impact: None
Availability impact: None

Hackers Center Security Group (http://www.hackerscenter.com/) spher3's Security Advisory Multiple transversal bug in vis.pl ------------------------------------------------------------------------ -- Description: Vis.pl is a perl script which manages files in order to show these; you can find it in e-cms default files. The vulnerability taken in exam is classifiable as transversal bug. In fact can show to everybody files such as passwords or accounts. ------------------------------------------------------------------------ -- Code Details: Vis.pl doesn't control cgi query except for: [...] if ( -e $datFile ) { open ( DAT_FILE, "$datFile" ); [...] This function controls only the file existence. Then the script start to open the file without check dangerous characters as "." and "/". So is simply to access where you want: http://[target]/cgi-bin/e-cms/vis/vis.pl?s=001&p=../../../../etc/passwd% 00 All variables that open files are unsafe: http://[target]/cgi-bin/e-cms/vis/vis.pl?s=../../../../etc/passwd%00 ------------------------------------------------------------------------ -- How to fix: You can fix this script with remove those dangerouse characters as taught from W3C WWW Security FAQ. Just adding a line: $datFile = s/..//g; You have to insert a line like this for ALL variables which contain files to open.

Vote for this issue:


Thanks for you vote!


Thanks for you comment!
Your message is in quarantine 48 hours.

Comment it here.

(*) - required fields.  
{{ x.nick }} | Date: {{ x.ux * 1000 | date:'yyyy-MM-dd' }} {{ x.ux * 1000 | date:'HH:mm' }} CET+1
{{ x.comment }}

Copyright 2023, cxsecurity.com


Back to Top