coova / coova-chilli

CoovaChilli is an open-source software access controller for captive portal hotspots.
Other
516 stars 258 forks source link

Segfault in haserl #252

Open morfair opened 8 years ago

morfair commented 8 years ago

I have Debian 8 64 bit on KVM (Qemu). I did download 1.3.1.4 and run debuild -b, end get deb package (with sign error in stdout). Than after setup on client I get login page, but when send login/pass I error in browser and this error in syslog:

Jun 6 21:12:03 coova-chilli kernel: [11999.273605] haserl[22551]: segfault at 0 ip 00007f8be5c0e204 sp 00007fff19ece828 error 4 in libc-2.19.so[7f8be5b84000+1a2000]

UPD: I tried run haserl /etc/chilli/www/login.chi < /tmp/post.30018 manually and got HTML success without segfault.

alex-eri commented 8 years ago

coova-chilli 1.3.1.4 haserl version 0.9.33 Linux 3.16.0-4-amd64

Same Segmentation fault

paologroppo commented 8 years ago

Jun 12 23:59:27 debian kernel: [ 762.920721] haserl[2589]: segfault at 0 ip b7664c88 sp bfd42704 error 4 in libc-2.19.so[b7527000+1a7000]

Kernel: Linux 3.16.0-4-686-pae Distributor ID: Debian Description: Debian GNU/Linux 8.5 (jessie) Release: 8.5 Codename: jessie

coova-chilli 1.3.0 haserl 0.9.33-1

Same problem here!

paologroppo commented 8 years ago

I've found a workaround but I'M concerned about security issues because now username & password is passed from a page to another in "get" instead of "post"... In fact the problem seem to be related to the "post" login form. Changing "post" to "get" in /etc/chilli/www/config-local.sh

form() {
    echo "<form name=\"form\" method=\"get\" action=\"$1\"><INPUT TYPE=\"hidden\" NAME=\"userurl\" VALUE=\"$FORM_userurl\">$2</form>"
}

All is working...

alex-eri commented 8 years ago

newest haserl works good

sevan commented 8 years ago

Upgrading to haserl 0.9.35 from the development branch seems to be a possible solution according to @alex-eri https://sourceforge.net/projects/haserl/files/haserl-devel/

timri commented 8 years ago

I had this, too. I worked around this by not using the miniportal but a "real" webserver and /usr/share/doc/coova-chilli/hotspotlogin.cgi.gz (unzip and put into /usr/lib/cgi-bin/ + enable cgi with apache)

m0ps commented 7 years ago

Also faced with this issue on ubuntu 16.04 with latest updates. Solved via manually installing haserl 0.9.35 deb package from 16.10 (yakkety).